- 博客(41)
- 收藏
- 关注
原创 JAVA使用图形组建LINUX weblogic配置
NO X11 DISPLAY/home/weblogic/.bashrc中添加以下内容 export DISPLAY=:0.0Could not initialize class sun.awt.X11.XToolkit/home/weblogic/Oracle/Middleware/user_projects/domains/base_domain/bin/set...
2019-03-29 14:56:37 263
原创 B+树特点总结
B+树数据结构会分为一定数量的块,每个块里面会存放具体数据当插入数据时候会判断插入位置所在的块是否已经是满的状态不满就直接插入,如果当前插入块中数据已经是满的状态,则会判断当前块前面的块是否是满的状态 如果前面块没有满,会将当前块中数据反转移动到前面块中然后插入数据 如果前面的块也满了,则会根据插入数据值作为依据,取索引值的中间值进行拆分,并且对原数据重...
2018-08-03 16:22:58 1264
转载 redis实现分布式锁
分布式锁一般有三种实现方式:1. 数据库乐观锁;2. 基于Redis的分布式锁;3. 基于ZooKeeper的分布式锁。本篇博客将介绍第二种方式,基于Redis实现分布式锁。虽然网上已经有各种介绍Redis分布式锁实现的博客,然而他们的实现却有着各种各样的问题,为了避免误人子弟,本篇博客将详细介绍如何正确地实现Redis分布式锁。可靠性首先,为了确保分布式锁可用,我们至少要确保锁的
2017-12-20 15:23:17 342
转载 多个数据库查询方案
一、需求缘起 分页需求 互联网很多业务都有分页拉取数据的需求,例如: 微信消息过多时,拉取第N页消息。京东下单过多时,拉取第N页订单。浏览58同城,查看第N页帖子。这些业务场景对应的消息表,订单表,帖子表分页拉取需求有这样一些特点: 有一个业务主键id,例如msg_id,order_id,tiezi_id分页排序是按照非业务主键id来排序的,业务中经常按照时间t
2017-11-27 16:00:19 4996
转载 高并发热点缓存数据可能出现问题及解决方案
背景电商场景促销活动的会场页由于经常集中在某个时间点进行“秒杀”促销,这些页面的QPS(服务器每秒可以处理的请求量)往往特别高,数据库通常无法直接支撑如此高QPS的请求,常见的解决方案是让大部分相同信息的请求都尽可能地压在缓存(cache)上来缓解数据库(DB)的压力,从而尽可能地去满足高并发访问的诉求(如图2-1所示)。图2-1 常规数据缓
2017-11-27 15:27:04 12112
原创 spring cloud config 配置
server端pom.xmlorg.springframework.cloudspring-cloud-config-serverapplication.ymlserver: port: 8888spring: application: name: config-server profiles:
2017-05-04 11:21:37 344
原创 JAVA CAS 原子类及多线程总结
1.原子类操作是cpu底层指令执行,本身为原子性,由于一个线程的操作会经历挂起到重新激活步骤而原子类操作没有锁,因此相比添加锁的 方式使用原子类性能更高
2017-04-10 09:02:23 475
原创 hashmap在多线程时要注意问题
多线程时候hashmap的两个或者多个rehash可能会导致map中同一个buket下链表数据形成一个环,这时在调用get方法时候会出现死循环,倒是cpu100%最好使用concurrentHashmap或者hashtable等其他方法使其线程安全http://www.07net01.com/2016/04/1440275.html
2017-03-30 17:07:10 1548
原创 spring aop实现原理
spring aop实现原理就是代理模式即一个接口有两个实现类,一个具体实现类,一个代理类,通过反射将切片类对象和具体实现类对象传入代理类方法,然后通过反射的到要执行的具体实现类的方法,和切片类方法并执行;动态代理实现主要是实现InvocationHandler,并且将目标对象注入到代理对象中,利用反射机制来执行目标对象的方法。代理模式最简单例子interface He
2017-03-01 14:28:34 432
原创 shell 脚本nginx日志分割
编写shell脚本 mvnginx.sh#!/bin/bash logspath="/usr/local/nginx/logs/"yesterday=`date -d '-1 day' +%Y%m%d`mv ${logspath}access.log ${logspath}access$yesterday.logmv ${logspath}error.log
2017-02-24 11:18:14 311
原创 shell脚本nginx日志解析入库
#!/bin/sh#获取nigin日志log_path='/usr/local/nginx/logs/access.log'cat $log_path | while read linedo#判断该条信息是否为我们需要if [[ $line == *'eleId='* ]]then #替换中=和&的转译符$line=${line//
2017-02-24 11:06:49 1525
原创 shell 脚本基本语法
文件头:#!/bin/sh shell打印:echo 123循环:cat $log_path | while read linedo echo 00000done判断:ifecho yes elseecho no fi字符串替换:line=${line//'被替换字符串'/'替换字符串'} (替换所有
2017-02-24 10:43:13 589
转载 spring security
http://www.cnblogs.com/wgp13x/p/4626026.html?utm_source=tuicool&utm_medium=referral
2017-02-20 15:21:11 219
转载 mysql mysam与innodb区别
InnoDB和MyISAM是在使用MySQL最常用的两个表类型,各有优缺点,视具体应用而定。 下面是已知的两者之间的差别,仅供参考。 innodb InnoDB 给 MySQL 提供了具有事务(commit)、回滚(rollback)和崩溃修复能力 (crash recovery capabilities)的事务安全 (transaction-safe (AC
2017-02-20 15:08:18 3834
原创 zk实现分布式锁
1。pom引入依赖org.apache.curatorcurator-recipes2.11.1org.apache.curatorcurator-client2.11.12.demoCuratorDemo.javapackage com.ujia.wb.zk.curator;import org.apache.curator
2017-02-20 11:45:45 1990
原创 tomcat及jvm优化
1.conf/server.xml将org.apache.coyote.http11.Http11NioProtocol"前一个不能支持太高并发设置tomcat最大并发数,方法:修改conf/server.xml,在Connector下增加以下代码:maxThreads="1000" minSpareThreads="100" maxSpareThreads="300" acce
2017-02-17 15:28:37 315
原创 spring-session-data-redis实现session共享
1.pom文件引入依赖org.springframework.sessionspring-session-data-redis1.3.0.RELEASE2.在redis linux-集群配置流程http://blog.csdn.net/yuxinchen/article/details/54970157基础上在spring-redis-cluster.xml配置文件
2017-02-17 12:00:56 5174 2
原创 session共享处理方式优缺点
1. 通过组播的方式进行集群间的共享,优点:web容器自身支持,配置简单,适合小型网站。缺点:当一台机器的上的session变更后会将变更的数据以组播的形式分发给集群间的所有节点,对网络和所有的web容器都是存在开销。集群越大浪费越严重。不能做到线性的扩展。2. 利用共享存储来共享Session数据所有的Web服务器都把session数据写到共享存储介质上,也都要来这台
2017-02-17 11:22:09 5129 1
转载 tomcat优化
问题定位对于Tomcat的处理耗时较长的问题主要有当时的并发量、session数、内存及内存的回收等几个方面造成的。出现问题之后就要进行分析了。 1.关于Tomcat的session数目 这个可以直接从Tomcat的web管理界面去查看即可 或者借助于第三方工具Lambda Probe来查看,它相对于Tomcat自带的管理稍微多了点功能,但也不多 2.监视Tomca
2017-02-17 11:13:21 292
原创 redis linux-集群新增删除节点流程
一。添加主节点打开/usr/local/redis-3.2.7/cluster mkdir 6385 #复制redis.conf配置文件并把端口改成6385启动新增节点:./redis-server /usr/local/redis-3.2.7/cluster/6385/redis.conf查看节点ps -ef | grep redis添加节
2017-02-16 15:37:05 1973
原创 rockemq linux-集群搭建
一。修改每台主机的hosts文件 vi /.etc/hosts120.77.61.XX nameserv1120.76.232.XXX nameserv2120.77.61.XX broker-a120.76.232.XXX broker-b120.77.61.XX broker-a-s120.76.232.XXX broker-b-s二。配置模板生成mkd
2017-02-15 09:32:17 694
原创 rocketmq linux-单个配置流程
一。下载rocketmq源码:https://github.com/alibaba/RocketMQ/releases二。由于需要编译,linux环境需要安装maven和jdk三。解压rocketmq,执行./install.sh四。环境变量:在终端中输入以下命令:vi /etc/profile ,在文件的末尾中添加如下两句话:export rocketmq=/usr/local/
2017-02-13 10:46:56 2037
转载 redis基础及特点
1.redis所有操作都是原子性,由于redis数据都在内存中,所有只放活跃数据,从服务器同步主服务器,从服务器可以连接其他主服务器二。redis缺点仅提供最基本的hash set, list, sorted set等基于数据类型,不分表,没有schema,没有索引,没有外键,缺少int/date等基本数据类型,多条件查询需要通过集合内联(sinter,zinterstore)和连接间接实
2017-02-12 21:45:08 324
原创 redis linux-集群配置流程
一。在redis linux-单个配置流程配置基础上 修改/usr/local/redis-3.2.7/6379.conf721行:cluster-enabled yes 729行: cluster-config-file nodes_7000.conf735行:cluster-node-timeout 5000二。redis集群需要使用ruby,安装rub
2017-02-10 14:27:37 893
原创 redis spring-data-redis 单个配置
1.引入pom依赖org.springframework.dataspring-data-redis1.8.0.RELEASEorg.apache.commonscommons-pool22.4.2redis.clientsjedis2.9.0 注意该版本需要依赖:spring 4.3.6.RELEA
2017-02-10 11:25:41 2127
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人