自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 问答 (2)
  • 收藏
  • 关注

原创 读懂java的异常栈

写了下面的异常测试类public class ExceptionTest { public void getName(String cityName) throws RuntimeException { try { getSchoolName(cityName); } catch (StringIndexOutOfBounds...

2018-07-29 01:11:36 2236

原创 深入理解cookie的前世今生

        提到cookie和seesion,相信很多人都知道,但是只是浮于表面,如果要他们详细的叙述原理及应用,估计很多人答不上来。相对于session存储在服务端来说,cookie是存储在客户端浏览器的。下面我将从几个方面来说明cookie。cookie从哪里来      1、服务端返回      2、客户端自己存储cookie到哪里去       对于浏览器来说,...

2018-07-28 23:55:05 642

原创 从此再也不用为python编码问题头疼了

首先说明几个常识          1、python默认文件编码为ascii编码          2、我们经常使用utf8来作为文件编码          3、python内部使用unicode编码          4、控制台显示中文使用的是gbk编码 再引出几个问题         1、为什么要用utf8而不是ascii来编码文件?          2、要显...

2018-07-28 22:29:08 335

原创 ZuulFilter和Fegin超时设置

         之前配置ZuulFilter和Fegin超时时用了相同的配置方法,之前请求时数据量较小,没有出现什么问题。可是今天用Sidecar调用了python的一个服务,这个服务比较耗时,问题就出现了,各种超时,经过问题排查,最终发现之前的理解是错误的。         正确理解:         ZuulFilter和Fegin中有两种超时:                 ...

2018-07-28 20:48:13 1510

原创 nginx配置https

这里主要记录下阿里云提供的配置步骤, 其中有一处错误需要注意。 以下是阿里云提供的免费证书(这点还是很值得赞的)下载配置。 需要配置服务?工程师一对一咨询,解决SSL证书安装、配置问题。¥56元起。立即咨询下载证书for Nginx安装证书文件说明:1. 证书文件214832942360149.pem,包含两段内容,请不要删除任何一段内容。2. 如果是证书系统创...

2018-07-27 12:29:53 209

原创 html的解析流程

先抛出几个问题:          1、DomContentLoad是什么 ?           2、Load是什么 ?          3、paint是什么          4、js会阻塞dom的解析吗,js会阻塞dom的渲染吗 ?          5、css会阻塞dom的解析吗,css会阻塞dom的渲染吗 ?          6、img会阻塞dom的解析吗,i...

2018-07-23 13:24:23 5333 2

原创 空的死循环为什么会让cpu100%

while (1) { //空代码块 }      上面这个代码相信很多人都写过,这个代码的后果就是cpu会100%(具体数值要看cpu核数和操作系统对这个的表示方法,有的2核会显示50%,有的2核会显示100%),如果是单核那么你的电脑会相当卡了。解决这个问题的办法很简单 while (1) { sleep(1); }加上一个sleep(1),让她休眠一秒就好...

2018-07-19 17:10:04 10554 3

原创 线程进程是怎样使用多核的

        最近由于有抢票的需求,对于一个用户而言,用一个死循环,一个刷票就好了,刷到了就break退出。但是现在我要考虑同时给很多人抢,那么必须要考虑并发。但是这是一个耗时的任务,很可能几天都不能结束这个任务,所以这个和普通的java web并发不同。我在思考如何设置这个线程模型时引出了一个问题,之前还一直都没思考过这个。 多核时,一个线程是始终由一个cpu核运行还是每个cpu核都会运行...

2018-07-19 16:21:17 7530

原创 mac查看多核cpu的利用率

众所周知,在linux下使用top命令,再输入数字1就可以查看cpu每个核的使用情况了。但是在mac下,可以使用top命令,但是输入数字1并不能显示多核的使用情况。那么怎么做呢? 步骤如下1、Launchpad -- 其它 -- 活动监视器 2、显示 -- Dock图标 -- 显示cpu历史记录3、窗口 -- cpu使用率4、此时就会出现四柱图这...

2018-07-19 14:17:01 24831 2

转载 @Autowired 如何做到自动装配私有变量而不使用set方法的原理

 熟悉jdk的话就知道,方法就是使用java.lang.reflect.Field类的:Field.setAccessible(true); 将字段设置为‘true’,就可以直接使用set方法为其赋值了。 如果不设置‘true’的话,则会抛出‘java.lang.IllegalAccessException’的异常 Spring中的代码如下(标红色的部分): -----------------...

2018-07-14 23:22:46 1836

原创 从日志层面分析mysql高可用实现原理

本文主要讨论innodb    关键问题:            mysql主要有哪些日志?             为什么MySQL有binlog,还有redo log?               事务是如何提交的?事务提交先写binlog还是redo log?如何保证这两部分的日志做到顺序一致性?               为了保障主从复制安全,故障恢复是如何做的?...

2018-07-14 23:15:06 256

原创 分布式锁的实现方式

        单台tomcat下,由于是多线程,mysql会存在多个连接,如果不做处理,会产生多线程数据不安全问题,此时可在具体的service中加锁即可处理         多台tomcat下,就要使用分布式锁         mysql 某一个 操作(insert,update,delete)是原子性的,不需要加锁,但是如果存在 ABA 问题的情况下,必须要加锁。ABA问...

2018-07-14 21:35:15 223

原创 高并发电商秒杀的演进

    没有最好的架构,只有最合适的架构。秒杀作为电商很重要的一部分,其技术实现也是相对比较复杂的。随着秒杀用户的增加,架构也是随之改变的,当然也可以一次性设计好,但是我并不建议这么做。为什么呢?大部分互联网公司初创时的人员非常少,有经验的更是稀缺,这时候如果一上来就往千万级,亿级的并发量设计,其难度可想而知。可能你花了一年,两年甚至更久的时间,系统还不能稳定,而此时公司的资源早已被耗尽,所设计的...

2018-07-14 17:00:00 760

原创 python如何让multiprocessing抛出错误信息

    如果你是第一次用 multiprocessing 写多进程,那么你一定会遇到一个很令你头疼的问题,就是程序执行到某一步就停止了,而且没有任何错误信息。我第一次遇到这个也是很无语,用log来调试之后,大概10分钟才想到可能是 multiprocessing 没有抛出错误信息导致的。如是goole了一下,果然找到了解决方法。result = pool.apply_async(loop, ...

2018-07-14 09:01:56 5758 3

原创 redis基本配置

一、远程登录1、切记首先开放6379端口,如果是阿里云,则可以去网络安全组配置。2、注释掉bind 127.0.0.13、修改  protected-mode yes为protected-mode no 二、日志配置 logfile "/xindao/redis/redis-4.0.10/log/redis.log" 其中需要创建目录  /x...

2018-07-13 19:12:20 196

原创 centos7.2自定义安装redis4.0.10

1、下载安装包并解压wget http://download.redis.io/releases/redis-4.0.10.tar.gztar xzf redis-4.0.10.tar.gz2、创建安装路径目录 mkdir -p /xindao/redis/redis-4.0.103、编译安装 [root@xdadult redis-4.0.10]# make ...

2018-07-13 17:06:10 554 1

原创 homebrew安装redis

1、安装安装命令brew install redismac下homebrew安装软件的位置/usr/local/Cellar故redis的安装位置在/usr/local/Cellar/redis配置文件位置 /usr/local/etc/redis.conf 2、启动server cd /usr/local/Cellar/redis/...

2018-07-13 15:30:38 861

原创 centso7安装jdk8

1、下载jdkhttp://download.oracle.com/otn-pub/java/jdk/8u171-b11/512cd62ec5174c3487ac17c61aaa89e8/jdk-8u171-linux-x64.tar.gz2、创建java目录,解压安装包,将解压后的目录移到java目录下 mkdir /xindao/java tar -zxv...

2018-07-11 17:56:48 393

原创 nginx添加模块

        场景是这样的,照着之前的方法 https://mp.csdn.net/postedit/80894577 安装了nginx。然而今天在配置https的时候,却遇到了这样的错误 the "ssl" parameter requires ngx_http_ssl_module。很显然这是由于没有安装ssl模块导致的,那么要解决这个问题就是要安装ssl模块。由于我的nginx已经有了其他...

2018-07-11 14:06:07 330

原创 ZuulFilter设置不路由

今天在使用spring cloud中zuulFilter的时候,遇到了一个问题,什么问题呢?    我的架构是这样     if (StringUtil.isNullOrBlank(tokenStr)){ returnToClient(response,AppError.APP_TOKEN_IS_NULL_ERROR); logger.error("tok...

2018-07-05 16:13:18 2020 1

原创 centos7.2源码安装mysql5.6

**源码安装和yum安装包安装**区别:yum安装简单,但不知道在哪个文件 源码安装复杂,但可自由配置推荐使用源码进行安装,使用源码安装 应使用wegt进行源码下载安装cmake1、从mysql5.5开始,mysql不再使用configure编译,而是使用cmake编译2、下载cmake wget https://cmake...

2018-07-03 18:23:18 415 1

原创 centos7.2安装nginx

去网站下载安装包,地址:http://nginx.org/en/download.html,本人下载格式为nginx-1.10.2.tar.gz 上传nginx-1.10.2.tar.gz安装包到linux服务器 解压 tar -xzvfnginx-1.10.2.tar.gz 进入解压后的目录 cd nginx-1.10.2 配置安装目录 ./configure --pre...

2018-07-03 10:49:02 356

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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