写在前面

虽然平时大部分工作都是和Java相关的开发, 但是每天都会接触Linux系统, 尤其是使用了Mac之后, 每天都是工作在黑色背景的命令行环境中. 自己记忆力不好, 很多有用的Linux命令不能很好的记忆, 现在逐渐总结一下, 以便后续查看.

Read More

写在前面

2015年对自己来说, 是收获的一年, 快速成长的一年. 年关将至, 需要将这一年里面做的事情整理一下, 整理的过程也是自我反思的过程. 当然也不能免俗的展望一下2016年. 写这篇总结的时候正好看到了一篇 robbin 的一篇文章《怎样以创业者的心态打工》, 其中的观点非常好, 在此谨记: 你的”职业生涯”就是以你名字命名的公司. 即使你在打工, 其实你也是在创业. 只不过你创业的主体不是一家公司或者项目,而是’你自己’,以你名字命名的职业生涯. 你应该像呵护一个创业公司那样呵护自己的职业生涯, 不断的提高自身的知识,经验,视野,能力, 以及在行业当中的影响力和人脉.

Read More

写在前面

目前公司在做基于thrift的服务治理, 目前有针对Java的服务治理框架, 其他语言也想接入到该框架中.现在有两种方案来进行接入, 分别如下:

  • 各个语言开发客户端来接入到现有框架中, 这就需要各个需要拿到服务地址列表进行后续的连接维护和负载均衡.
  • 非Java语言通过接入HAProxy或Nginx来接入框架, 这就需要我们可以动态加载HAProxy的配置.

Read More

简单理解

Zookeeper的集群有一个法则,整个集群的数量要过半存活,集群就是稳定的。在这法则之外,官方文档中还提供了Group和Weight的配置。Zookeeper的Group配置的意思就是对整个大的zk集群进行分组.

例如,我们有1、2、3、4、5、6、7七个节点。我们做如下配置:

Read More

写在前面

接触Elasticsearch已经有几年的时间, 从一开始在自己的普通台式机上搭建单实例来简单记录测试环境的日志, 到现在生产上用9个Elasticsearch实例搭成的集群来记录商城后台服务的全量日志. 使用场景没变,都是用了记录日志, 并做实时检索和统计. 但是随着每天记录的数据量快速递增,QPS快速递增,我们经常会碰到一些性能问题,这些问题一直在驱动我们对Elasticsearch集群进行持续优化, 这里是有必要记录一下我们在使用ES(后续文章中用ES代替Elasticsearch)的过程中积累的经验.

Read More

概述

系统取名为FLO, 这来自于一款之前比较流行的休闲小游戏<<美女餐厅>>中的女主角, 相信玩的好的玩家可以让flo有条不紊的分配各种餐厅服务任务,我们的寓意希望FLO可以帮助我们很好的去管理,监控各种调度任务.随着公司业务的快速发展, 支撑业务发展的技术框架也越来越复杂, 我们需要一些程序按照特定的规则自己执行一些逻辑.这就催生了越来越多的任务.如果从任务调用的方式上来划分,可以分为静态调度任务和动态调度任务.


静态调度任务

当一个程序在执行任务之前就可以确定是按照怎样的规则去执行, 并且有明确的Cron Expression来描述执行规则. 暂且称这部分任务为静态调度任务. 它可能存在如下业务场景中(只罗列部分实例):

Read More