自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

gerryke的blog

每天追求智慧多一点点

原创 用mac原生的日历和automator,实现定时发微信

mac对于程序员的友好与生俱来,对于定时发微信这样的需求,一行代码都不需要,只要两步即可: 第一步,打开automator(俗称扛炮),录制如下: 录制中可以通过指定切换输入法,确保不会误操作,美中不足的是无法直接编辑录制完成的脚本,录制有问题只能重新录 自己反复试过几次确定没问题(可以断网...

2020-02-24 16:00:57

阅读数 7

评论数 0

原创 用python实现定时发送邮件的功能

像python这种库丰富又不需要接触到底层的语言,用来做定时邮件的功能再适合不过。 代码如下,目的是为了每天上班下班(9点Check in, 19点Check out)发送一封邮件,且邮件标题带日期。 邮件目前是整点发送,且没有排除周末,若想改得更随机一点,可以增加sleep的间隔,或者用分钟来判...

2020-02-17 16:04:13

阅读数 25

评论数 0

原创 docker容器通过宿主机ip中转实现容器之间相互调用

一般每个容器,都会映射一个端口到宿主机中,方便在宿主机上访问,例如ngnix,mysql,redis等等。 但是我们有一种常见的场景,就是a容器,需要通过宿主机的端口映射,调用b容器的服务,这里如果在a容器内部配置localhost/127.0.0.1/0.0.0.0:port都是不会起作用的,...

2018-05-28 17:19:19

阅读数 9044

评论数 1

原创 移动支付(mobile money)系列 —— TPS和用户数的对应关系推导

tps和对应的用户数的转换关系,其实是要根据不同业务的类型,用户的行为特征来估算,下面采用一个比较简单的方式建模,如果有更合理的方式,可以进一步优化 定义: 日活跃用户数(每天登陆系统做交易的用户): x 系统峰值tps:y 推算: x日活跃用户,平均每人每天一笔交易,这样x...

2018-04-20 18:08:52

阅读数 268

评论数 0

原创 移动支付(mobile money)系列 —— Apple Pay的原理

Apple Pay 背景起因 传统基于磁条卡片(包括信用卡、银行卡)的支付流程是不安全且繁琐的,磁条接口、暴露在外的卡片号码、支付密码/安全码等都存在安全隐患,磁卡支付流程过长,用户体验差 Apple Pay的目标 “Your wallet. Without the wallet.”替代钱...

2018-03-08 15:12:32

阅读数 5193

评论数 0

原创 移动支付(mobile money)系列 —— Service Provider的异同

背景 根据世界银行的数据,目前很多国家的银行覆盖率很低,称为unbanked region,然而这些国家的手机覆盖率却不低,因此给移动支付提供了广阔的市场机会。 移动支付(mobile money)业务,运营商也能做,银行也能做,支付宝也能做。三者的出发点不一样。但有一点是共通的,就是最大限度...

2018-03-07 10:49:40

阅读数 269

评论数 0

原创 分布式与云化的主要区别

分布式与云化,这两个概念经常看到,其实两者有差别。现在传统行业,都有对it系统做x86化,云化的趋势。而分布式,可以说是其中的一个阶段,或者一种妥协。 下面这个表格大致描述: 模式 分布式 云化 请求消息分配方式 按照用户的信息(地区,号段等)分配 按照取模,求哈希值等方式 ...

2018-01-08 18:22:39

阅读数 6209

评论数 0

原创 AIX 主机遇到没有足够空间生成core文件的办法

ibm的帮助文档足以解决这样的问题点这里查看值得一提的是以下命令: lsattr -Elsys0 | grep full 的输出结果为: fullcore true Enable full CORE d...

2017-08-17 14:12:46

阅读数 440

评论数 0

原创 通过ftp命令测试两台主机之间的网络情况

背景分布式系统一般都会采取应用和数据分离的方式,以便两边各自做扩展,这个时候,点对点的网络情况显得特别重要。 最近就遇到两台主机通过不同的交换机连接,导致原先的千兆网没有发挥出该有的带宽,同时ping的时延抖动也比较厉害。解决方式在ftp下执行以下的语句,就可以观察点对点的网络传输速度,再结合n...

2017-07-14 14:37:23

阅读数 1248

评论数 0

原创 您的 mac 无法与 apple watch 通信。

在设置apple watch自动解锁mac都时候,这个问题足足困扰我两天,查了各种方式各种方法都不可以,无论如何都会在正在打开那里转圈圈。如下图: 找了半天,打了半天官方支持的电话,死活都不行,最后终于在谷爹的帮助下,用英文找到了苹果社区的官方推荐答案。 https://discussio...

2017-06-06 17:32:57

阅读数 8161

评论数 6

原创 grep只打印出关键字(grep only print keyword)

有时候需要只grep出代码中引用到的所有的表(关键字为后缀_t),不包含其他的内容。例如: grep _t * PricingStrategy.cpp: “or exists (select 1 from rent_event_type_map_t e w...

2017-02-14 17:07:50

阅读数 824

评论数 0

原创 三分钟看懂一致性哈希算法

受一篇“五分钟看懂”的启发,来个哗众取宠的标题 一致性哈希算法,作为分布式计算的数据分配参考,比传统的取模,划段都好很多。 在电信计费中,可以作为多台消息接口机和在线计费主机的分配算法,根据session_id来分配,这样当计费主机动态伸缩的时候,因为session_id缓存缺失而需要放通的会...

2016-12-30 09:25:21

阅读数 45878

评论数 7

转载 通过automator实现在finder下自动打开vim

mac可以通过automator自制app, 实现在finder下双击.h, .cpp, .c等等你想用vim编辑的文件,直接打开item的vi窗口编辑该文件 applescript脚本挺好用啊。 本篇转载,原贴地址: http://thepugautomatic.com/2015/02/open...

2016-04-18 17:52:43

阅读数 470

评论数 0

原创 在iterm中用expect脚本实现ssh, telnet对aix, linux的自动登录

在mac上转战iterm以后,才知道自动登录的内部原理,原来可以用expect脚本做和服务器的自动交互,当然自动登录只是其中的一小部分功能啦 ssh自动登录: #!/usr/bin/expect set timeout 30 spawn ssh [lindex $argv 0]@[lind...

2016-04-14 11:14:27

阅读数 1748

评论数 0

原创 aix中的makefie不支持ifeq

写makefile的时候,有一些场景需要根据某些条件来设置变量的值,但是在aix如果使用ifeq就扑街了,直接报 make: Dependency line needs colon or double colon operator. 原因好像是aix的make不是gnumake ...

2016-01-15 15:15:13

阅读数 826

评论数 0

原创 exit() 只析构全局变量不析构局部变量

先看以下这段代码: #include #include #include class CTest { public: CTest(int iIdentity){m_iTest=iIdentity; printf("CTest() %d !\n", m_iTes...

2015-12-03 15:28:21

阅读数 626

评论数 0

转载 Little-endian UTF-16 Unicode text, with very long lines, with CRLF line terminators

Sometimes you can have the problem that you cannot 'grep' files in Linux, if those files are generated on a Windows station. If you check ...

2015-11-18 09:12:24

阅读数 3950

评论数 0

原创 XCode中使用github做多人协同开发

本文集合了多个地方搜索的结果,姑且厚着脸皮说是原创把 1. 注册github账号,并通过邮箱验证 2. 为你的mac添加认证,使得它能够连接到github。 参考http://help.github.com/mac-set-up-git/  一步一步操作即可 3. 先在github里面添加一...

2015-09-06 17:31:23

阅读数 2049

评论数 0

原创 C++虚函数表的验证

要了解C++对象的虚函数的内存布局,推荐的是如下的三篇由浅入深的文章: C++虚函数表解析 http://blog.csdn.net/haoel/article/details/1948051 C++对象的内存布局(上) http://blog.csdn.net/haoel/a...

2015-08-12 14:33:19

阅读数 374

评论数 0

原创 AIX平台下面long的长度与编译选项-q64的关系

日常我们的认知是在64位的机器上,int是4个字节,long是8个字节。但是在AIX,这个问题会更复杂一些: AIX可能是为了向下兼容的目的,通过编译选项 -q64 来规定long长度 测试代码: void TestInt() { int nTemp=0; long lTe...

2015-06-25 10:39:04

阅读数 1191

评论数 0

原创 TT:Number overflow for TO_CHAR function -- file "numberAPI.c"

这个错误在网上搜到网易博客的一篇文章,不知所云,再仔细查找,他其实是翻译oracle论坛的一个DBA和一个用户的交流,但其实这个交流focus的是变量绑定的问题。 如果同样的语句执行,一直都是成功,某种特殊场景报这个错,基本上可以排除是绑定的问题。 我遇到这个报错是在TT 7....

2015-06-01 15:32:00

阅读数 502

评论数 0

原创 Swift 代码分享——Calculator without MVC

最近在跟着斯坦福的网易公开课教程自学Swift, 跟着做计算器以学习语法,第三讲中即将将计算器改成MVC版本,所以就先贴出未经过MVC分离的代码,权当学习记录. 已调试通过,跟课堂上的一样,enter压栈,操作符运算 注释后续补上:) // // ViewController.sw...

2015-06-01 14:55:00

阅读数 415

评论数 0

原创 关于动态链接中的全局变量

《程序员自我修养》观后验证第二弹。 第一个例子: 有三个程序: main.cpp #include int global_symbol = 300; extern void testso1(); extern void testso2(); int main() { ...

2015-03-05 15:38:28

阅读数 439

评论数 0

原创 gcc利用寄存器存储参数提高性能

"在x86-64时代,寄存器数量多了,GCC就可以利用多达6个寄存器来存储参数,多于6个的参数,依然还是通过入栈实现。了解这些对我们写代码很有帮助,起码有两点启示:     尽量使用6个以下的参数列表,不要让GCC为难啊。     传递大对象,尽量使用指针或者引用,鉴于寄存器只有64位...

2015-03-04 16:56:48

阅读数 1305

评论数 0

原创 对象空指针中的成员的值是0x8是怎么回事?

一段非常好玩的代码(其实是经常犯的错): struct TTest { long long a; char b[10]; }; void test_nullpoint() { TTest *ptTest = NULL; if(ptTest->b) { printf(&quo...

2015-02-15 15:40:41

阅读数 510

评论数 0

原创 linux 与 aix/hp的shell对于子shell变量赋值的作用域不同

CompileDir() { echo $* | tr -s ' ' '\n' | while read cmd do ProdDir1="abc"; do...

2015-01-23 17:15:10

阅读数 805

评论数 0

原创 自动监控进程并启动的shell脚本

用法: autostart "test 1" 实现过程:每个一秒ps一次进程是否存在,不存在则nohup启动之。 autostart() { if [ $# -eq 0 ] then echo "...

2015-01-13 20:04:24

阅读数 355

评论数 0

原创 ++i 真的比 i++ 性能高吗?

不少人都说++i比i++性能高,因为i++会再分配一个临时变量存储i的旧值。 因此我一直以为++i是不需要寄存器的原子操作,直到看到一篇大神的文章: 多线程程序中操作的原子性 http://www.parallellabs.com/2010/04/15/atomic-operation-i...

2015-01-07 11:22:14

阅读数 677

评论数 0

原创 delete与delete[]的区别

如果是基本类型数组调用delete就可以删除之,而一个自定义的结构数组,却最好使用delete[],为什么?原因如下: y = new xxx[10] delete y; 10个元素所占的内存都会被释放,但是xxx如果有析构函数的话,只有第一个元素的析构函数被调用,其他9...

2015-01-06 17:09:10

阅读数 283

评论数 0

转载 HPUX 核心参数详解

原帖地址: http://blog.sina.com.cn/s/blog_5dd380b90100csak.html 1、Accounting Subsystem(记帐子系统)     acctsuspend   暂停记帐          Minimum:     -100   ...

2015-01-06 16:56:01

阅读数 817

评论数 0

原创 HPUX队列明明是空的,msgsnd却报Resource temporarily unavailable

这个问题2011年IDEP入网测试测性能的时候遇到过,当时觉得自己已经记住了,但是今天遇到还是忘记了。 经过提醒才想起来,HPUX还有这个限制。  NAME       msgtql - maximum number of System V IPC messages in t...

2015-01-06 16:53:42

阅读数 1925

评论数 0

原创 电信中4G "15G断网"和3G“20G断网”的区别

现在3G和4G的套餐这么多,很多其实对于流量是有设置上限的,消费也会有封顶。封顶的感念比较简单,3G和4G这两种断网方式听上去很容易混,其实他们是有区别的: a. 3G  20g断网: 针对特定的主销售品定义的累积量而言,不分套内流量和套外流量,以销售品ID为单位累计到20G阀值,到达则...

2014-12-05 10:51:37

阅读数 1143

评论数 0

原创 fcntl 遇到 No locks available 错误的处理方式

HPUX环境 nflocks - maximum number of file locks 修改该参数就可以解决文件锁不够用的问题。

2014-11-24 11:26:42

阅读数 567

评论数 0

原创 使用量账本和累积量的区别

中国电信在线计费中的“免费资源”在

2014-11-21 17:42:17

阅读数 436

评论数 0

原创 HPUX下用stty设置ctrl+c

HPUX非常麻烦,ctrl+c都需要手动设置c

2014-11-19 19:31:23

阅读数 549

评论数 0

转载 HPUX 扩文件系统

原帖地址:http://blog.163.com/thomas_shen/blog/static/6657997220114313913735/ 检查是否有onlinejfs: swlist -l product | grep -i online swlist -l produc...

2014-11-19 11:24:51

阅读数 936

评论数 0

原创 HUPX对于nofiles的设置

用ulimit -n xxx在自己用户下设置 sh: ulimit: The specified value exceeds the user's allowable limit.

2014-11-17 19:43:30

阅读数 836

评论数 0

原创 HPUX对于参数传递的校验

最近在折腾HPUX, 还是有一些奇葩的信息

2014-11-15 10:27:54

阅读数 366

评论数 0

原创 HPUX如何在递归查找文件内容

HPUX中的grep没有-r的选项,因此查找的方法如下:

2014-11-15 10:25:56

阅读数 507

评论数 0

原创 strncat, snprintf和strncpy对目标串结束符的不同处理方式

The strncat() function shall append not more than n bytes (a null byte and bytes that follow it are not appended) from the array pointed to by s2...

2014-10-23 16:46:33

阅读数 1390

评论数 0

提示
确定要删除当前文章?
取消 删除