0%

EmmyLua是一款专用于Lua的编辑器插件,支持 Jetbrains 产品家族以及VSCode。EmmyLua插件利用注解 annotation 功能来增加代码提示以及其它编辑器功能。EmmyLua注解功能只是单纯的辅助编辑器代码提示以及其它功能,和Lua代码的实际运行逻辑没有任何关系,因为它们就是普通的Lua注释。

阅读全文 »

XLua是目前国内使用较多的热更新框架(可能是有腾讯加持), Xlua同时也提供了Lua调用C#的能力,其实Lua调用C#的场景更多,要想实现热更新,很多控制逻辑都得写在Lua里,这篇文章主要是记录了Lua如何调用C#。

阅读全文 »

XLua为Unity、 .Net、 Mono等C#环境增加Lua脚本编程的能力,借助xLua,这些Lua代码可以方便的和C#相互调用。 其实除了XLua实现了相互调用的能力,另外通过XLua很容易实现一种热更新方案,动态替换Lua脚本内容,可以看出XLua还是很强的,XLua的原理可以参考另一篇博客《XLua实现原理》。

阅读全文 »

Lua语言本身并没有提供面向对象的语法机制,这需要我们自己设计实现一套类的机制。首先,对于面向对象编程,至少需要类和对象这两个概念 。目前有两种方式来完成实现Lua的面向对象编程:一种是利用Lua的元表( metatable )来模拟OOP;另一种是利用第三方库封装的OOP能力来写代码(比如middleclass)。

阅读全文 »

最近一直想把闲置的4TB移动硬盘用起来,用来搭建一个NAS,其实方案很简单,之间升级台式机剩余一个256G的固态硬盘,买了二手的主机,配置是i3 10105 + 七彩虹 H510I-Gaming的ITX主板,所以非常mini,电源也是ITX专用电源200W足够用了,另外买了8GB的内存。安装了 CentOS7.5 的版本,先挂载硬盘,再开启SMB服务即可,如果SMB服务存在问题也可以安装Webdav服务,其实相对来说Webdav更通用。

阅读全文 »

本篇文章主要学习Flink的核心API的进阶部分的笔记,包含自定义Source、自定义分区器、自定义Sink等都是经常会遇到的场景,另外介绍了Transformation 部分高级算子,从Flink Function 的宏观层级出发,通过实现顶层接口把自定义的功能交给Flink去执行,后续遇到了更复杂的自定义场景也会在本篇笔记中补充。

阅读全文 »

关键指标分析是一种常用的业务分析手段。对于产品来说,某个功能上线后需要观察用户的操作数据,比如很简单的PV/UV,用户在层级留存率等等。对于研发的来说,关注的点在于功能的某个具体流程优化上,更关注性能或者稳定性相关的数据,那么就需要采用一套系统来完成这样的数据统计能力。本篇文章将介绍这种通用的业务指标计算模型,根据自定义的规则就可以得出想要的数据。

阅读全文 »

Kibana 是为Elasticsearch设计的开源分析和可视化平台,利用Kibana可以很容易对Elasticsearch中的数据实现图表可视化、搜索等功能。当然熟悉Kibana的前提是对Elasticsearch有一定的了解,这是kibana的官方手册:https://www.elastic.co/guide/cn/kibana/current/index.html,本篇文章主要是Lucene查询语法,添加索引,以及如何使用Kibana的可视化平台(图表和仪表盘)。

阅读全文 »

本篇文章主要学习 Flink的核心API的基础部分的笔记, 在学习之前先部署了一个单节点的Flink环境,然后重点需要了解的就是Flink的执行上下文(StreamExecutionEnvironment)、数据源(Source API)、转化相关操作(Transformation)、输出(Sink) 等,另外就是提交和取消作业的一些操作。

阅读全文 »

也是因为最近处理业务上的问题,如果我希望看到某些实时数据的变化那么必然会涉及到流式计算,大数据处理框架从原始的 MapReduce、Hive 到 DAG的Tez,再到Spark的近实时处理是一个不断进化的过程,对于要求更高的场景还是Apache Flink比较在行,Apache Flink是一个带状态的流式计算框架,Flink不但能进行流式计算,也能进行批处理,也就是离线计算。下面是最近两天学习Flink的一些笔记,后面会逐步完善和校正。

阅读全文 »