- 博客(23)
- 资源 (4)
- 收藏
- 关注
原创 python基础和pycharm使用
1.pycharm1.1 为特定格式文件添加头信息File--Settings--Editor--File and Code Templates--Python Script:"""===============author:${USER}time:${DATE}E-mail:1399892035@qq.com===============""" ${PROJECT_N...
2019-09-29 10:44:47
435
原创 Anaconda环境下安装pygame
Anaconda环境下安装pygame首先,在cmd中输入python回车,查看自己的Python版本;然后在此处链接下载相应pyhton和windows版本的whl文件。链接[http://www.lfd.uci.edu/~gohlke/pythonlibs/#pygame]下载完成以后:在cmd中进入相应的文件夹,然后使用pip install + whl文件名,其实按下tab会自动补...
2019-09-27 09:52:54
1016
原创 zookeeper的原理和应用(非常详细透彻)
场景一有这样一个场景:系统中有大约100w的用户,每个用户平 均有3个邮箱账号,每隔5分钟,每个邮箱账需要收取100封邮件,最多3亿份邮件需要下载到服务器中(不含附件和正文)。用20台机器划分计算的压力,从 多个不同的网路出口进行访问外网,计算的压力得到缓解,那么每台机器的计算压力也不会很大了。通过我们的讨论和以往的经验判断在这场景中可以实现并行计算,但我们还期望能对并行计...
2019-09-04 17:11:35
981
原创 Docker简述
Docker1、简介Docker是一个开源的应用容器引擎;是一个轻量级容器技术;Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像;运行中的这个镜像称为容器,容器启动是非常快速的。2、核心概念docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上);...
2019-09-04 10:42:44
122
原创 JVM优化
JVM优化VM简单结构图类加载子系统与方法区:类加载子系统负责从文件系统或者网络中加载Class信息,加载的类信息存放于一块称为方法区的内存空间。除了类的信息外,方法区中可能还会存放运行时常量池信息,包括字符串字面量和数字常量(这部分常量信息是Class文件中常量池部分的内存映射)。Java堆java堆在虚拟机启动的时候建立,它是java程序最主要的内存工作区域。几乎所有的...
2019-09-02 16:54:29
155
原创 电商系统部署 MyCat & Nginx
1.开源数据库中间件-MyCat如今随着互联网的发展,数据的量级也是撑指数的增长,从GB到TB到PB。对数据的各种操作也是愈加的困难,传统的关系性数据库已经无法满足快速查询与插入数据的需求。这个时候NoSQL的出现暂时解决了这一危机。它通过降低数据的安全性,减少对事务的支持,减少对复杂查询的支持,来获取性能上的提升。但是,在有些场合NoSQL一些折衷是无法满足使用场景的,就比如有些使用场景...
2019-08-29 09:49:35
349
原创 Spring Boot应用启动器合集
Spring Boot应用启动器springBoot应用启动器基本的一共有44种,具体如下:1)spring-boot-starter这是Spring Boot的核心启动器,包含了自动配置、日志和YAML。2)spring-boot-starter-actuator帮助监控和管理应用。3)spring-boot-starter-amqp通过spring-rabbit来支持...
2019-08-05 09:42:31
184
原创 解决VMware重启,Linux的IP地址改变的问题
有两种方式:一种是命令行,一种是图形化桌面命令行设置ip:先看需要了解的配置网络配置查看记住NAT设置中的子网IP、子网掩码、网关IP三项,接下来配置文件主要是这三项。编辑Linux中的网络配置文件vi /etc/sysconfig/network-scripts/ifcfg-ens33 #注 网络配置文件名可能会有不同,在输入...
2019-07-31 10:49:37
1400
原创 使用dubbo分布式处理时,遇见PageHelper插件使用的问题
警告: Hessian/Burlap: 'com.github.pagehelper.Page' is an unknown class in WebappClassLoader context: delegate: false repositories: ----------> Parent Classloader: ClassRea...
2019-06-14 17:05:20
984
1
原创 多个数据源的轻松支持
前面文章里介绍了自定义注解完成数据库切库,今天接着这个高并发的话题,继续说一下项目里多个数据源的支持。如何理解支持多个数据源呢?简单的说,就是一个项目里,同时可以访问多个不同的数据库。实现的原理先交待一下:单个数据源在配置时会绑定一套mybatis配置,多个数据源时,不同的数据源绑定不同的mybatis配置就可以了,简单的思路就是让不同的数据源扫描不同的包,让不同的包下的mapper对...
2019-05-08 15:38:14
370
原创 自定义注解完成数据库切库
自定义注解完成数据库切库为什么会有数据库切库一说首先,许多项目都有主库与从库,有的主库后面甚至会有很多个从库,主从库之间的通常同步也很快,这为数据库切库提供了一个基础,因为可以去不同的数据库查询,得到相同的结果(如果不同的数据库是完全不同的,这个不在我们这篇文章讨论的范围之内,那个属于让项目支持多个数据源)其次,随着项目越来越大、操作的用户越来越多,对数据库的请求操作越来越多,很容易想...
2019-05-08 15:27:50
188
原创 Disruptor并发框架
什么是DisruptorMartin Fowler在自己网站上写了一篇LMAX架构的文章,在文章中他介绍了LMAX是一种新型零售金融交易平台,它能够以很低的延迟产生大量交易。这个系统是建立在JVM平台上,其核心是一个业务逻辑处理器,它能够在一个线程里每秒处理6百万订单。业务逻辑处理器完全是运行在内存中,使`用事件源驱动方式。业务逻辑处理器的核心是Disruptor。Disruptor它是一...
2019-05-07 17:43:55
133
原创 如何合理的规划一次jvm性能调优
如何合理的规划一次jvm性能调优JVMJVM调优Java垃圾收集器面试:你懂什么是分布式系统吗?Redis分布式锁都不会?>>>这是jvm优化系列第三篇:jvm优化——垃圾回收 jvm优化——监控工具JVM性能调优涉及到方方面面的取舍,往往是牵一发而动全身,需要全盘考虑各方面的影响。但也有一些基础的理论和原则,理解这些理论并遵循这些原则会让你的性能调优...
2019-04-29 17:14:26
161
原创 jvm优化必知系列——监控工具
JavaJVM调优JVM监控这是jvm优化系列第二篇:jvm优化——垃圾回收通过上一篇的jvm垃圾回收知识,我们了解了jvm对内存分配以及垃圾回收是怎么来处理的。理论是指导实践的工具,有了理论指导,定位问题的时候,知识和经验是关键基础,数据可以为我们提供依据。在常见的线上问题时候,我们多数会遇到以下问题:内存泄露 某个进程突然cpu飙升 线程死锁 响应变慢.....
2019-04-29 17:12:16
249
原创 jvm优化—— 图解垃圾回收
jvm优化—— 图解垃圾回收jvm垃圾收集器jvm调优从这篇开始我们开始探讨一些jvm调优的问题。在jvm调优中一个离不开的重点是垃圾回收,当垃圾回收成为系统达到更高并发量的瓶颈时,我们就需要对jvm中如果进行“自动化”垃圾回收技术实施必要的监控和调节。这是jvm优化系列第一篇,其他请看以下:jvm优化必知系列——监控工具对于调优之前,我们必须要了解其运行原理,java ...
2019-04-29 17:08:06
444
原创 JVM(Java虚拟机)优化大全和案例实战
堆内存设置原理JVM堆内存分为2块:PermanentSpace 和 Heap Space。Permanent 即持久代(Permanent Generation),主要存放的是Java类定义信息,与垃圾收集器要收集的Java对象关系不大。 Heap = { Old + NEW = {Eden, from, to} },Old 即 年老代(Old Generation),New ...
2019-04-29 15:26:54
159
原创 jvm参数设置大全
jvm参数设置大全转自:http://blog.csdn.net/kthq/article/details/8618052参数说明-Xmx3550m:设置JVM最大堆内存为3550M。-Xms3550m:设置JVM初始堆内存为3550M。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。-Xss128k:设置每个线程的栈大小。JDK5.0以后每个线程栈大小为1M...
2019-04-29 15:21:03
97
原创 线程池原理分析&锁的深度化
线程池原理分析&锁的深度化线程池什么是线程池Java中的线程池是运用场景最多的并发框架,几乎所有需要异步或并发执行任务的程序都可以使用线程池。在开发过程中,合理地使用线程池能够带来3个好处。第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。第二:提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行。第三:提高线程的可管理性。线程是稀缺资源,...
2019-04-26 16:04:11
112
原创 java并发包&线程池原理分析&锁的深度化
java并发包&线程池原理分析&锁的深度化并发包同步容器类Vector与ArrayList区别1.ArrayList是最常用的List实现类,内部是通过数组实现的,它允许对元素进行快速随机访问。数组的缺点是每个元素之间不能有间隔,当数组大小不满足时需要增加存储能力,就要讲已经有数组的数据复制到新的存储空间中。当从ArrayList的中间位置插入或者删除元素时,需要对...
2019-04-26 16:02:46
134
原创 多线程之间实现通讯
多线程之间实现通讯课程目标多线程之间如何通讯wait、notify、notifyAll()方法lock停止线程多线程之间如何实现通讯什么是多线程之间通讯?多线程之间通讯,其实就是多个线程在操作同一个资源,但是操作的动作不同。画图演示多线程之间通讯需求需求:第一个线程写入(input)用户,另一个线程取读取(out)用户.实现读一个,写一...
2019-04-26 16:00:34
320
原创 多线程之间实现同步
多线程之间实现同步为什么有线程安全问题?当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题。但是做读操作是不会发生数据冲突问题。案例:需求现在有100张火车票,有两个窗口同时抢火车票,请使用多线程模拟抢票效果。代码: classThreadTrain1 implementsRunnable { priv...
2019-04-26 15:58:33
317
原创 多线程快速入门
多线程快速入门课程目标线程与进程为什么要使用多线程?多线程应用场景多线程创建方式练习题线程生命周期面试总结练习题线程与进程区别每个正在系统上运行的程序都是一个进程。每个进程包含一到多个线程。线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线程基本上是轻量级的进程,它负责在单个程序里执行多任...
2019-04-26 15:53:17
82
原创 eclipse导入maven项目,pom.xml报错问题处理
在POM配置Maven plugin提示错误“Plugin execution not covered by lifecycle configuration”的解决方案eclipse在其POM文件的一处提示出错如下:Pluginexecutionnotcoveredbylifecycleconfiguration:org.apache.maven.plugins:maven-...
2019-03-08 14:12:45
2551
1
Python-KaggleInstacart市场篮子分析
2019-12-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人