Blog

  • Published

    存在多种情况下的乱码,应用级别的乱码和控制台乱码 应用级别的乱码类似如下: error MSB1009: ��Ŀ�ļ������ڡ� 这类需要配置应用的中文输出 修改cmd的代码页即可。 一种方法是在cmd的属性中修改默认代码页为437,第二种是用chcp 437命令修改。 不过这两种解决方法的副作用是msbuild的输出会变为英文。 更好的解决方法暂时还没倒腾出来。 第二种,控制台乱码,这个难治,而且原因千奇百怪 参考方案如下: 解决windowspowershell中文显示问号及乱码...

  • Published

    什么是GELF Graylog扩展日志格式(GELF)是一种日志格式。 Structured events from anywhere. Compressed and chunked. The Graylog Extended Log Format (GELF) is a log format that avoids the shortcomings of classic plain syslog: Limited to length of 1024 bytes – Not much spa...

  • Published

    本篇是基于Liblog 的结构分析,同时我提倡在非netcore项目中使用此类库,正常情况下只需要在基础组件库中生成单个文件即可,同时一次安装,终身有效。

  • Published

    这是一篇翻译文章 Peter Bourgon 原作: Metrics, tracing, and logging 今天,我很荣幸的参加了 2017 分布式追踪峰会(2017 Distributed Tracing Summit), 并和来自 AWS/X-Ray, OpenZipkin, OpenTracing, Instana, Datadog, Librato,以及其他更多组织的同仁进行了愉快的沟通和讨论。 其中一个重要的论点,是针对监控项目的范围和定义的。作为一个分布式追踪系统,应该管理日...

  • Published

    原理 单一实例下:使用setnx命令(在key不存在时,创建并设置value 返回1,key存在时,会返回0)来获取锁。 应用 以扣库存为例,使用锁能够有效保证不会被超卖; 基础版方案:数据库锁 SELECT stock from goods where ID =1 for update; update goods set stock=stock-1 where id=1 and stock=10 // 正常情况下看你业务需求,如果能够在落库前确认库存的话,上面这句话后面的stock=10能...