- 浏览: 272306 次
- 性别:
- 来自: 天津
最新评论
文章列表
实现Java高并发隔离 模拟
- 博客分类:
- java
package org;
import java.util.Random;
public class MockMain {
//交易总金额
public static int money =0;
public static void main(String[] args) {
//模拟多线程,
for(int i=0;i<5;i++){
new Thread(new Runnable() {
public void run() {
//商品金额
money = new Rand ...
ServletRequestAttributes servletRequestAttributes =(ServletRequestAttributes)RequestContextHolder.currentRequestAttributes();
//获取session
HttpSession s = servletRequestAttributes.getRequest().getSession();
//请求
HttpServletRequest request = servletRequestAttributes.getRequest();
//应答 ...
resis实现tomcat7 session 共享
1.下载
compile group: 'redis.clients', name: 'jedis', version: '2.5.2'
compile group: 'org.apache.commons', name: 'commons-pool2', version: '2.2'
testCompile 'org.hamcrest:hamcrest-core:1.3'
testCompile 'org.hamcrest:hamcrest-library:1.3'
redis-session-tomcat ...
DubbX多网卡的问题:
机器上有两个ip地址:192.168.6.57 , /218.68.250.*
Zookeeper 注册机器的ip地址为 192.168.6.24
错误的注册信息:
需要注册信息为:
[27/04/17 02:30:17:017 CST] localhost-startStop-1 INFO zookeeper.ZookeeperRegistry: [DUBBO] Load registry store file /root/.dubbo/dubbo-registry-192.168.6.24.cache, d
ata: {annotationCon ...
tomcat7 优化实例:
1、在bin/catalina.bat文件中加入下面参数,对JVM进行优化,
set JAVA_OPTS=
-server
-Xms1000M
-Xmx1000M #-Xms与-Xmx设成一样的值,避免JVM因为频繁的GC导致性能大起大落
-Xss512k
-XX:+AggressiveOpts
-XX:+UseBiasedLocking
-XX:PermSize=64M
-XX:MaxPermSize=300M
-XX:+DisableExplicitGC
-XX:MaxTenuringThreshold=31
-XX:+UseConcMar ...
java 命令:
java -Djava.ext.dirs=jar包文件路径 执行java类
例如:
java -Djava.ext.dirs=.. com.alibaba.rocketmq.namesrv.NamesrvStartup
roketmq3.2.6 设置
#设置rocketmq的地址
export ROCKETMQ_HOME=/usr/mq
#设置服务地址:端口
export NAMESRV_ADDR=192.168.90.105:9876
注意:prodeuct需要在64为系统下使用64位jdk才可以运行
在启动生产者之前必须手动设置标题, 生产者才可以生产这个标题
--创建标题
updateTopic -n 192.168.90.105:9876 -b 192.168.90.105:10911 -t TopicTest
---查看标题
clusterList -n 192.168.90.105:9876 ...
---查看生成和消费队列的消息数量
kafka-run-class.bat kafka.tools.ConsumerOffsetChecker --topic test --zookeeper localhost:2181 --group test1
格式:kafka-run-class.bat kafka.tools.ConsumerOffsetChecker --topic 标题 --zookeeper 服务地址:端口 --group 消费组名称
topic:创建时topic名称
partition:分区编号
offset:表示该parition已经消费了多少条message
...
Zookeeper 安装过程
1. 下载 zookeeper-3.4.6
2. 解压后目录为:
3.复制zoo_sample.cfg 重新命名为:zoo.cfg
参数设置说明:
# The number of milliseconds of each tick
tickTime=2000
# The number of ticks that the initial
# synchronization phase can take
initLimit=10
# The number of ticks that can pass between
# sending a request ...
1. 删除日志方法和快照文件方法
1》自动删除日子功能
java -Djava.ext.dirs=lib org.apache.zookeeper.server.PurgeTxnLog log_path snap_path -n 10
log_path: 日志的路径
snap_path:数据快照路径
其中-n 表示要保留多少个文件,不能低于3本例表示10条数据
Lib :表示 jar包库路径
实例:
java -Djava.ext.dirs=lib org.apache.zookeeper.server.Pu ...
<!--[if !supportLists]-->1. <!--[endif]-->下载 kafka_2.10-0.9.0.1.tgz
<!--[if !supportLists]-->2. <!--[endif]-->解压 kafka_2.10-0.9.0.1.tgz 进入kafka_2.10-0.9.0.1\bin\windows 目录中
<!--[if !supportLists]-->1》 <!--[endif]-->启动zookeeper ;
zookeeper-serve ...
在多台机器都存在定时任务时,通过zookeeper 实现定时任务在一台机器上执行,
如果执行定时任务的机器停止后,会自动转移到其他机器上执行。
可以查看当前几个应用在运行;
自动任务在哪一个应用上运行;
可以动态启动和停止自动任务;
注意:
需要在管理平台添加任务后,才可以运行自动任务。
目标bean 一定要在spring 中生成。
需要删除节点时,使用 addauth digest 用户:密码 ,设置权限后,再删除。
如:addauth digest admin:admin
delete /uncode/schedule/tas ...
分布式锁 zookeeper
- 博客分类:
- 分布式技术
package zk.lock;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.CountDownLatch;
import org.apache.zookeeper.CreateMode;
import org.apache.zookeeper.WatchedEvent;
import org.apache.zookeeper.Watcher;
import org.apache.zookeeper.Watcher.Event.EventType;
...
nio 服务端:
package nio.study.serverclient;
import java.io.IOException;
import java.net.InetSocketAddress;
import java.nio.channels.SelectionKey;
import java.nio.channels.Selector;
import java.nio.channels.ServerSocketChannel;
import java.util.Iterator;
public class EchoSelectorServer {
...
使用:hashmap传输数据时,便利map中的数据时,发现输出的数据和插入的数据顺序不相同,
后来从网上查询了一下发现:HashMap散列图、Hashtable散列表是按“有利于随机查找的散列(hash)的顺序”。并非按输入顺序。遍历时只能全部输出,而没有顺序,
如果希望map中的数据按照插入时的顺序输出时,可以使用 LinkedHashMap 。
实现:
package org.gradle;
import java.util.HashMap;
import java.util.Iterator;
import java.util.LinkedHashMap ...