nginx超时重试机制及潜在的坑

发布于:2016-9-22 23:49 作者:losetowin 浏览:10823 分类:技术
问题描述:
有一个发送短信的http服务,客户端调用之后,只有一次请求,但是发了三次短信。

分析看:
     1、客户端仅发起了一次请求,
     2、服务端收到了三次请求
     3、三次请求分别落在了三台后端机器上。每台后端机器仅收到一次请求

基本的架构如...

阅读全文>>

标签: nginx 重发

0

慢查询导致整个服务不可用的预防及解决办法

发布于:2016-9-20 20:12 作者:losetowin 浏览:1805 分类:技术
现象:
DB层服务短时间内涌入大量的慢查询,并且查询的数据量比较大(2000w+,查询字段未添加索引)导致服务不可用,出现mysql查询超时现象
3ABA9400-D312-4310-805C-12797889ECF0.png

分析:
数据库操作时误将查询条件的字段的索引去掉了,导致原有的查询效率降低,产生慢查询。

解决:
对相应字段添加索引,慢查询消失,超时现象消失。

反思:
1、突然出现的慢查询导致服务不可用这种事情该如何避免?
 ...

阅读全文>>

做好监控,不做盲人

发布于:2016-7-9 20:48 作者:losetowin 浏览:1923 

1. 为什么要做监控

“不要让自己成为最后一个知道系统出现问题”

不管在大公司还是小公司里面,在线上运行的项目不止一个,一个人可能同时需要维护多个新老系统,并且可能还有新的项目需求,所以不可能这个人去隔三差五的到服务器上看下服务是否正常。一方面,反馈不及时。另外一方面,没有这么多的精力去做这件事情,而且项目多的时候,精力就更不够了。

这时候,监控就相当于自己的眼睛,能够帮自己及时发现系统中的问题,及时解...

阅读全文>>

标签: 监控

0

关于Java中Daemon线程

发布于:2016-6-22 23:18 作者:losetowin 浏览:1768 分类:Java
  1. 什么是daemon线程?
    也可以称为守护线程,是一种支持性线程,主要用于程序中的后台调度及支持性工作
  2. 主要用在什么地方? 
    比如垃圾回收就算一种守护线程
  3. 需要注意什么?
    1). 因为是守护线程,或者说是支持性线程,就意味着这个线程并不属于程序中不可或缺的一部分。所以当所有的非守护线程(即用户线程)结束之后,程序就会结束,JVM退出,同时也就会杀死所有的非守护线程(可以参见J...

阅读全文>>

标签: java daemon

0

mac下Iterm支持rzsz上传下载

发布于:2016-6-10 11:41 作者:losetowin 浏览:2323 分类:mac
1、使用brew安装lrzsz
sudo brew install lrzsz
可能会出现下面的问题:
rzsz01.png
sh-3.2# sudo brew install lrzsz
Error: Cowardly refusing to `sudo brew install`
You can use brew with sudo, but only if the brew executable is ow...

阅读全文>>

标签: mac iterm2 rzsz

0

【基础-积累】JAVA获取当前jar包目录

发布于:2016-6-5 22:39 作者:losetowin 浏览:2314 分类:Java

在java开发中,经常需要获取当前jar包所在目录,比如需要获取配置文件,具体代码如下:

代码如下:

 this.getClass().getProtectionDomain().getCodeSource().getLocation().getFile(); 

或者下面这种

 this.getClass().getProtectionDomain()...

阅读全文>>

标签: java jar

0

如何查找占用CPU最高的线程及相关代码

发布于:2016-4-18 23:22 作者:losetowin 浏览:2759 分类:Java

标题其实还可以描述成:如何查找是哪些代码导致的CPU使用率高?

场景:

   某些线上服务,一段时间之内占用CPU特别高,如何确认这是否属于正常情况还是代码中出现了异常导致占用CPU特高呢?如何定位确认是哪个线程导致的?如何确认下是哪部分代码导致的CPU使用率偏高呢?

     当然CPU使用高,并不一定意味着是有问题的,下面的方法...


阅读全文>>

标签: CPU jvm 进程

0

Linux 查找文件内容(查找包含某字符串的文件名)

发布于:2016-4-16 21:43 作者:losetowin 浏览:10266 分类:linux
两个场景:
1、已知文件位置,查找文件中是否包含某个字符串
2、不知道文件在哪里,但知道在哪个目录, 查找包含某个字符串的文件在哪里

使用方式:
1、使用grep命令,从文件内容中查找到匹配字符串的行
格式:
grep “要查找的字符串” 文件名
例子:

grep “www.dutycode.com” test.txt

文件名...

阅读全文>>

标签: linux grep find

0

ERROR 1820 (HY000): You must reset your password using ALTER USER statement

发布于:2016-3-17 20:34 作者:losetowin 浏览:2573 分类:mac
问题描述:

mac osx安装mysql后,启动使用命令行登录之后,执行sql语句,提示错误:

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement

如下图:

解决:
需要重新设置密码,具体步骤如下: ...

阅读全文>>

标签: mysql mac

0

Mac OSX 下安装mysql服务端

发布于:2016-3-17 20:15 作者:losetowin 浏览:2864 分类:mac
使用最简单的安装方式:
1、下载安装包,地址:http://dev.mysql.com/downloads/mysql/
2、选择   Mac OS X 10.10 (x86, 64-bit), DMG Archive   如下图:

PS:根据自己的系统版本,自助选择。
3、后面就是普通的安装了,双击dmg文件安装就可以了。
4、注意安装最后的时...

阅读全文>>

标签: mysql mac

0

1 2 3 4 5 6 7 8 9 ... »