Node Cluster

众所周知,Nodejs是单线程运行的,这也是它经常被吐槽的一个点。针对这个点,Node推出了Cluster这个模块,用于创建多进程的Node应用。 基础使用 Cluster的基本使用方法就是cluster.fork(),这样就能直接创建一个新的进程。进程使用有完全独立的数据空间,堆栈等。这个时候我们 阅读更多…

LeetCode 10. Regular Expression Matching

题目:实现正则表达式的.和*两个符号。 思路:第一时间看到正则,马上就想到了用while来不停匹配。后来遇到了a*a匹配aa,发现要处理贪心和不贪心多种情况,所以将while转为了递归。 题目考察的多是递归的设计和考虑多种情况是否周全,代码很少(JS实现): var isMatch = functi 阅读更多…

LeetCode 650. 2 Keys Keyboard

题目:初始化字符只有一个A,现在有两种操作:1.复制当前所有字符。2.粘贴。使用这两种操作得到n个A字符,求最少的步数。 思路:我是在dp的tag下找到的这个题目,但是我发现最简单的解法应该直接使用贪心算法就可以了。 要得到n个A字符,可以认为最少的步数肯定是通过粘贴最多的字符来得到的,那么反推就能 阅读更多…

关于mysql与emoji的坑

emoji 网上已经有很多的mysql支持emoji文章了,大概就是:不管是啥mysql相关配置,通通改成utf8mb4 。 这样就能够支持emoji了,所以我也不多介绍这方面,我只说一下我遇到的几个坑。 1.找不到my.ini linux下应该好找,但是windows下,要不就是没有,要不就是有好 阅读更多…

[译]Android程序性能设计最佳实践

Android应用应该要很快,更精确的说应该是要有效率。那就是说移动设备环境中有限的计算能力和数据存储,很小的屏幕,有限的电池寿命中要更有效率。 这篇博客我就会向你展示为性能而设计的最佳实践。 1. 避免创建对象 对象的创建在android中开销要比在java中大的多。尽量去避免创建一个对象,越多的 阅读更多…

Android毛玻璃效果侧滑菜单

实现目标 相信大家都知道毛玻璃效果是怎样的,也可以说是高斯模糊效果。效果图如下: 这是一个透明,且会对背景进行高斯模糊的效果,看起来就像是毛玻璃一样,其实不光是侧滑菜单,只要是view,理论上都可以实现这样的效果,接下来我们就来实现这个效果。 第一步:框架搭建 我使用的android studio, 阅读更多…

Spring WebSocket教程(二)

实现目标 这一篇文章,就要直接实现聊天的功能,并且,在聊天功能的基础上,再实现缓存一定聊天记录的功能。 第一步:聊天实现原理 首先,需要明确我们的需求。通常,网页上的聊天,都是聊天室的形式,所以,这个例子也就有了一个聊天的空间的概念,只要在这个空间内,就能够一起聊天。其次,每个人都能够发言,并且被其 阅读更多…