echo 256 | sudo tee -a /proc/sys/fs/inotify/max_user_instances
echo 32768 | sudo tee -a /proc/sys/fs/inotify/max_queued_events
echo 65536 | sudo tee -a /proc/sys/fs/inotify/max_user_watches
分类目录归档:Uncategorized
Mysql空间数据相关
跨平台解决方案
桌面端
- electron:代表作在http://electron.atom.io/apps/,包含atom, visual studio code, bearychat,Slack等,不支持XP系统
- NW:支持xp系统,官方网站https://nwjs.io/,接口上大体与electron相仿(一位中国作者后台主要负责electron)。
- Hex:代表作有道词典。官方网站http://hex.youdao.com/zh-cn/index.html
手机端
- PWA: 相关文章https://github.com/sundway/awesome-pwa,代表作有aliexpress等,消息推送等功能有待验证。
- react native: 原生应用,代表作http://facebook.github.io/react-native/(有百度facebook,百度百科,QQ),以及http://reactnative.cn/cases.html
- weex:原生应用,代表作天猫,淘宝,钉钉优酷等,支持安卓,IOS,web三个平台
- cordova: http://cordova.apache.org/
- 微信小程序:功能受限
总结
- 开发桌面应用的话,优先考虑electron,除非需要支持xp系统
- 开发移动应用,学习成本依次为 PWA < cordava < weex < react native。其中PWA无需熟悉原生应用编程技术,cordava需要少量,而weex与react需要较多。从性能和能实现的功能上来说则顺序相反。
- weex,react与微信小程序的开发模式都是一样的,都是将html,css代码转换为原生应用。PWA和cordava的开发模式和web差不多,差别在于PWA通过谷歌公司实现推送等原生应用功能,而cordava通过插件实现。
- weex,react,cordava都需要通过应用渠道进行分发,而PWA需要安装谷歌浏览器57以上版本,微信小程序功能受限。
微信小程序导航
Flex布局教程
- http://www.ruanyifeng.com/blog/2015/07/flex-grammar.html
- http://www.ruanyifeng.com/blog/2015/07/flex-examples.html
关于研发管理和绩效考核
配置nginx使用letsencrypt免费https证书
生成证书
certbot certonly --webroot \
-w /data/web/c4ys/frontend/web/ -d c4ys.com -d www.c4ys.com \
-w /data/web/c4ys/mobile/web/ -d m.c4ys.com
修改nginx配置
listen 443 ssl;
ssl on;
ssl_certificate /etc/letsencrypt/live/www.c4ys.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/www.c4ys.com/privkey.pem;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
error_page 497 https://$host$uri?$args;
自动更新证书
0 3 */10 * * certbot renew –quiet
0 3 */10 * * service nginx restart
亚马逊联盟API上手指南 – Amazon.cn Product Advertising API quick start
fedora Hibernate
dnf install gnome-shell-extensions-alternative-status-menu
mysql随机字符串
drop function if exists rand_string; create function rand_string(str_length tinyint unsigned, str_type tinyint unsigned) returns varchar(255) begin -- Function : rand_string -- Author : reymondtu#opencfg.com -- Date : 2011/03/27 -- Params : str_length int unsigned -- The random string length of random string -- str_type int unsigned -- The random string type -- 1.0-9 -- 2.a-z -- 3.A-Z -- 4.a-zA-Z -- 5.0-9a-zA-Z -- -- Example : -- -- mysql> select rand_string(32,5) from dual; -- +----------------------------------+ -- | rand_string(32,5) | -- +----------------------------------+ -- | HbPBz4DWSAiJNLt4SgExHVwQI34bI6mt | -- +----------------------------------+ -- 1 row in set declare counter int unsigned default 0; declare const_chars varchar(64) default '0123456789'; declare result varchar(255) default ''; if str_type = 1 then set const_chars = '0123456789'; elseif str_type = 2 then set const_chars = 'abcdefghijklmnopqrstuvwxyz'; elseif str_type = 3 then set const_chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; elseif str_type = 4 then set const_chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; elseif str_type = 5 then set const_chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; else set const_chars = '0123456789'; end if; while counter < str_length do set result = concat(result,substr(const_chars,ceil(rand()*(length(const_chars)-1)),1)); set counter = counter + 1; end while; return result; end