- Published on
ARTS 第16周
- Authors
- Name
- Jason Yang
- @yangjinlong86
第十六周ARTS。这个周末也不消停,一家人都得了感冒,前两天吃了药就会很困,实在坚持不住。乘着这会儿孩子睡着了,赶紧把ARTS写了,这一周已经积累了arts的素材,应该不会耗时太久。
Algrithm
package org.nocoder.leetcode.solution;
import java.util.Set;
/**
* Given a string s and a dictionary of words dict, determine if s can be
* segmented into a space-separated sequence of one or more dictionary words.
* <p>
* For example, given
* s ="leetcode",
* dict =["leet", "code"].
* <p>
* Return true because"leetcode"can be segmented as"leet code".
*
* @author jason
* @date 2018/10/22.
*/
public class WordBreak {
public boolean wordBreak(String s, Set<String> dict) {
int len = s.length();
boolean[] arrays = new boolean[len + 1];
arrays[0] = true;
for (int i = 1; i <= len; ++i) {
for (int j = 0; j < i; ++j) {
if (arrays[j] && dict.contains(s.substring(j, i))) {
arrays[i] = true;
break;
}
}
}
return arrays[len];
}
}
Review
http://cloudurable.com/blog/kafka-tutorial-kafka-producer/index.html https://dzone.com/articles/writing-a-kafka-consumer-in-java
封装kafka client 操作考虑以下几个问题
- 创建过程对调用者透明
- 对资源关闭的封装
- 客户端类不能使用单例
Tip
使用 jenkins pipeline 定时运行python脚本
每次pull 新的docker image下来运行起来后,如果image的标签没有变化,那么在本地旧的image会变成标签为none的镜像,留着基本没什么用,堆积多了之后非常占用存储空间,这类镜像是需要我们手动清除的。正好测试服务器上安装了jenkins,就使用jenkins pipeline 项目来运行写好的python脚本
- 在 jenkins 上创建 pipeline 项目
- sh 'python ssh_cmd.py'
- 注意权限,jenkins项目 是用
jenkins
用户来执行命令的 - 定时触发执行或者在其它项目构建完后触发执行
Share
关于分库分表
分表分库常见的几种方式,垂直分库,垂直分表,水平分表,水平分库分表,目前项目的情况,我们决定选用单库水平分表的方式来优化现有的软件。