随笔分类 -  General Programming

Git Conventional Commits (Git代码提交说明规范)
摘要:Conventional Commits 是关于Git Commit 提交代码时, 填写的说明文字的一个规范. 这个规范提供了一套易于理解和使用的规则, 通过描述提交消息中的特性, 修复和重大更改, 创建易于阅读的提交历史, 也方便在其之上编写自动化工具. 阅读全文

posted @ 2022-08-22 00:03 Milton 阅读(492) 评论(0) 推荐(0) 编辑

CAP理论中, P(partition tolerance, 分区容错性)的合理解释
摘要:我对CAP的理解: A 可用性, 主要是在高负载下的可用性, 以及低延迟响应. 这个在当前的系统设计中是排在第一位的, 尽量保证服务不会失去响应, C 一致性, 强一致性, 或是时序一致性, 或是滞后的最终一致性. 分别代表了系统需要保障A和P的能力时, 在一致性上的妥协. P 隔离容忍性, 在节点间通信失败时保证系统不受影响. 对隔离容忍的要求提高会降低对可用性或一致性的期望, 要么停止系统用于错误恢复, 要么继续服务但是降低一致性. 在现今的大型分布式系统, 对ACP的取舍已经很明显, 因为伴随着分布式的结构, P是必然存在的, 而业务往往要求很高的可用性, 所以对强一致性的要求就需要让步, 过渡为最终一致性 阅读全文

posted @ 2018-06-29 12:15 Milton 阅读(3269) 评论(0) 推荐(1) 编辑

Ubuntu16.04 安装Processing
摘要:下载 在 https://processing.org/ 上下载最新的linux 64bit版本gzip文件, 当前是 http://download.processing.org/processing-3.3.7-linux64.tgz . 安装 解压后移动到 /opt/ 目录 添加快捷方式 在 阅读全文

posted @ 2018-04-14 23:58 Milton 阅读(1321) 评论(0) 推荐(0) 编辑

Git开发分支管理
摘要:远程仓库有master和dev分支的情况 1. 克隆代码 git clone https://somewhere.com/master-dev.git 2. 查看所有分支 git branch --all # 默认有了dev和master分支,所以会看到如下三个分支 # master[本地主分支] 阅读全文

posted @ 2016-11-28 02:34 Milton 阅读(3790) 评论(0) 推荐(0) 编辑

Twitter Snowflake 的Java实现
摘要:在关闭显示的情况下, 可以达到每毫秒3万个的生成速度 /** * An Implementation of Twitter Snowflake ID Generator */ public class SnowflakeId { private final static long EPOCH = 0 阅读全文

posted @ 2016-01-29 18:30 Milton 阅读(1490) 评论(0) 推荐(0) 编辑

在大词典中查找一组与给定字符串最相似的词
摘要:标准的说法是在词典中取出与给定字符串编辑距离最短的词.首先是编辑距离Levenshtein distance的计算, 通过建立两个字符串的矩阵得到, 优化算法是Wagner–Fischer algorithm, 通过DP可以将计算量降低到O(n2)因为计算编辑距离需要耗费相当的时间, 所以这个问题的... 阅读全文

posted @ 2015-01-25 01:11 Milton 阅读(1135) 评论(0) 推荐(0) 编辑

中文全文检索Coreseek, Sphinx-for-Chinese, SCWS的使用对比
摘要:最近在做网站的全文检索, 因为网站前端使用的是PHP, Java的效率不高, 资源消耗和维护成本都比较大, 所以排除掉了Lucence. 最开始考虑的是Sphinx. 有一个中文的Sphinx项目叫Coreseek, 最开始是用这个来做测试的. 按网站上说明的配置, 搭建过程也比较顺利, 但是有一个... 阅读全文

posted @ 2012-02-24 10:07 Milton 阅读(865) 评论(0) 推荐(0) 编辑

导航