如果直接修改代码逻辑,则会造成新旧版本的耦合,不仅完全上线时要再次修改,而且还要增加一次测试流程,这样成本就有些高了。这时就想到能不能用nginx+lua对新旧版本接口做灰度发布。  步骤:    1、安装thrift        2、生成客户的代码    3、编译lua调用thrift需要的库    &n
转载 2017-06-19 11:11:13
694阅读
dubbo与http区别相关概念RPC、REST、Dubbo、HTTP、RMI区别 RPC、REST区别,通俗讲两者API设计风格不同,如下:功能RPCRESTful提交功能POST/submitPOST/goods查看商品列表GET/lists?index=1POST/goods/1234两种风格的API区别: RPC面向过程,只发送 GET 和 POST 请求。GET用来查询信息,
2020-03-31[好文]gRPC使用protobuf进行数据封装(序列化和反序列化),同时使用http2进行数据传输,为什么不直接基于TCP传输呢?grpc究竟和其他rpc框架,比如阿里的dubbo,facebook的Thrift有什么区别?这篇文章带你了解一下。地址:https://mp.weixin.qq.com/s/GuMp4Z8oJv9K_MJxMptsSA2020-03-30[好文]
如果HBase thrift2报:“TIOError exception: Default TException”, 这个可能是因为操作的表不存在,不一定是网络或磁盘操作异常。 HBase Thrift2偷懒了,所有异常被统一成了TIOError和TIllegalArgument两个异常, 导致调用者无法区分,而且出错信息也没能很好的带过来,增加了定位工作量。 在HBase client中为如下一
转载 2023-07-21 12:36:41
166阅读
 前言:   Thrift作为Facebook开源的RPC框架, 通过IDL中间语言, 并借助代码生成引擎生成各种主流语言的rpc框架服务端/客户端代码. 不过Thrift的实现, 简单使用离实际生产环境还是有一定距离, 本系列将对Thrift作代码解读和框架扩充, 使得它更加贴近生产环境. 本文讲述RPC服务框架中, 日志的重要性, 以及logid的引入. 日志不仅包含丰富的数据(就看
AD: 对于Web高性能服务器上的选择,这个是很多人头痛的问题。对于Apache、lighttpd、Nginx都用他们优点,在什么情况下我们如何去选择适合自己的Web高性能服务器,如何去搭建一个适合自己的架构环境,这个是一个很麻烦的事情。接下来,在ADC 2012(Alibaba Developer Conference 2012)大会上,51CTO记者有幸采访到
转载 2024-05-16 09:58:30
57阅读
这个Github项目提供了Lua、Luajit、Python、Node.js和Java等动态语言的性能测试,具体语言版本包括: Lua 5.3.3 Luajit 2.0.4 Python 3.5.1 Pypy 2.4.0 HipHop VM 3.13.2 NodeJS v6.2.1 OpenJDK 1.8.0_92 (reference)主要测试下面算法的性能: 二叉树
转载 2023-07-10 18:31:41
654阅读
注:本文例子使用的是luajit2.0.5版本,原生lua版本可能有差异,但差异不大。写在前面:lua性能分析PepperfishProfiler挺好用的,主要灵活,分析的数据也清晰,有嵌套调用的耗时信息。其他lua分析工具也可见。本脚本的基于PepperfishProfiler做修改的。为什么需要修改:复杂的lua逻辑导致PepperfishProfiler分析结果不准确,原因:lua的debu
转载 2024-04-30 03:47:39
236阅读
环境: Lua5.1   LuaJIT-2.0.0-beta81、自有设施比对      不加jit时,比下lua的table 与 c/c++的哈希表性能。            然后换到luajit下,比较下,会发现lua的ta
转载 2023-06-08 09:27:32
150阅读
===============================================================服务器,main.lua===============================================================local socket = require ( "socket" ) local tcpServer = nil --
转载 2023-06-23 23:15:43
132阅读
Cocos2d-x-Lua示例项目HelloLua 本篇博客介绍Cocos2d-x中Lua的实例项目,就是使用Cocos2d-x创建的初始项目运行所呈现的农场,这里笔者取名为HelloLua。本篇博客会详细在代码中解析Cocos2d-x 3.1.1创建的Lua项目中实例,一些API的使用。 注:本示例项目在Mac系统下创建 首先我们来创建一个Cocos2d-x Lua项目,在命令敲入类似以下命令
转载 2024-04-25 17:36:51
96阅读
前言 和在所有其他编程语言中一样,在Lua中,我们依然应当遵循下述两条有关程序优化的箴言: 原则1:不要做优化。 原则2:暂时不要做优化(对专家而言)。 这两条原则对于Lua编程来说尤其有意义,Lua正是因其性能而在脚本语言中鹤立鸡群。 当然,我们都知道性能是编程中要考量的一个重要因素,指数级时间复杂度的算法会被认为是棘手的问题,绝非偶然。如果计算结果来得太迟,它就是无用的结果。因此,每一个优秀的
转载 2024-03-18 17:07:12
211阅读
--- Hbase 简述 分布式,面向列的开源数据库 高可靠性,高性能,面向列,可伸缩的分布式数据系统 高可靠性: 安全性 对外服务可靠 高性能: 处理数据的速度 效率 集群所有机器的运算资源处理数据
转载 2023-07-12 07:10:24
268阅读
LuaJIT本身对Lua作了很多方面的优化工作,对很多Lua自带的库函数进行了优化。优化详情:http://wiki.luajit.org/NYIwiki:http://wiki.luajit.org/Home关于Lua优化的一些细节:1.经常使用的库函数,使用local方式来调用,注意仅一次调用是不起作用的。--this is the lowest met
原创 2014-06-30 21:43:42
8794阅读
2点赞
2评论
规则1:不要优化。规则2:仍然不要优化(专家除外)  当用Lua编程时,这两条规则显得尤为重要。Lua性能著称,而且在脚本语言中也因此而值得赞美。  然而,我们都知道性能是编程的一个关键因素。具有复杂指数时间的问题被称作疑难问题并不是偶然发生。太迟的结果是无用的结果。因此,每个优秀的程序员应该总是在花费资源去优化一段代码的代价和这段代码在运行代码时节约资源的收益相平衡。一个优秀的程序员关于优化的
lua
转载 2017-07-03 11:55:50
1929阅读
性能测试的目标 1> 系统的性能瓶颈定位 操作系统、数据库、中间件服务器等的参数配置是应用系统发生性能问题的重要原因 2> 发现一些软件算法方面的缺陷 一些多线程、同步并发算法在单用户模式下测试是很难发现问题的,只有通过模拟多用户的并发操作,才能验证其运行是否正常与稳定。 3> 系统的验收测试 验证预期的性能指标 4>
一、 安装 安装包比较大,可拿u盘拷走,里面附有安装说明二、 启动开始—所有程序—找到如下程序—右键---以管理员身份运行打开程序如下图所示,3个菜单分别是创建/编辑脚本、运行负载测试、分析测试结果也可以单独运行3个组件➤Virtual User Generator用于捕获最终用户业务流程和创建自动性能测试脚本 (也称为虚拟用户脚本)。➤ Control
Rust 性能调优 Nugine最近我遇到一个性能下降问题,在动用各种工具折腾到接近放弃之时,又想出一个点子,获得了最高九倍的性能提升。为此专门写一篇文章,复盘一下性能调优的历程。 问题背景在 ICPC 比赛中,选手阅读题目,编写程序,提交到在线评测系统(OJ)。OJ 会编译运行选手提交的程序,选手从标准输入读取题目数据,向标准输出写入答案。在选手程序运行完毕后,OJ 会比对选手程序输出和标准答案
海量互联网业务系统只能依赖分布式架构来解决,而分布式开发的基石则是RPC;本文主要针对两个开源的RPC框架(gRPC、 Apache Thrift),以及配合GoLang、C++两个开发语言进行性能对比分析。C++、Thrift都是比较成熟的技术,先简单介绍一下GoLang以及gRPC; GoLan
转载 2022-12-19 09:50:03
2014阅读
这个thrift的简单示例来自于官网 (http://thrift.apache.org/tutorial/go), 因为官方提供的例子简单易懂, 所以没有必要额外考虑新的例子. 关于安装的教程, 可以参考, 关于thrift文件的语法, 可以参考: .运行下面的示例, 除了需要安装thrift外, 还有一些要求:(1) go需要版本达到1.7或者更高.(2) GOPATH可能需要调整, 或者人工
  • 1
  • 2
  • 3
  • 4
  • 5