自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(66)
  • 收藏
  • 关注

原创 链上数据交易模板

请一定要注意下面三点://1.必要情况下可以提高gasPrice 5%-30%左右(做到可以随时动态调整) //2.nonce需要自己内部维护一份(可以采用redis去维护,每个转账账号维护自己对应的nonce,每次交易成功自增+1,多服情况下记得要加锁处理) //3.转账账号不要只设置一个,需要要多个账号去实现交易转账(防止链上大量交易排队的情况)下面是简单例子(未去实现上面注意的三点,自己手动业务处理下即可)/**NFT批量转账 * @param wallet...

2022-03-12 11:57:55 557

原创 链上交易数据监听

监听事件的模板如下:(注意:链上监听时采用的WebSocket,容易断开,需要自己断线重连处理)/** * 监听NFT合约事件 */ public JSONObject subscribeTradeEvent() { JSONObject obj=new JSONObject(); Web3j web3j = null; WebSocketService ws =null; WebSocketClient...

2022-03-12 10:55:12 10692 2

原创 redis集群问题总结及解决

一、redis集群部署一直卡在Waiting for the cluster to join ......我搭建的redis集群中端口号是从 7001 ~ 7006的,其中 7001、7003、7005 为主节点,7002、7004、7006为从节点;那么redis集群中总线端口为17001、17002、17003、17004、17005、17006 这些端口都要打开,要能正常访问。二.ERR Slot 0 is already busy (Redis::CommandError)1.进

2021-09-14 09:14:29 739

转载 创建GitHub博客主页(仓库主页)绑定域名问题

原文链接:https://blog.csdn.net/tr1912/article/details/80673610

2020-07-22 17:48:05 164

原创 linux 简单的定时器设置

1.crontab -e2. 0 1 * * * find /data/app/sch/log/ -mtime +2 -name '*.gz' -exec rm -rf {} \; (每天1点清除这个目录下以gz结尾的文件)3./etc/sysconfig/crond reload 生效

2020-05-23 09:20:47 194

原创 mysql 插入表情数据报错解决

java.sql.SQLException:Incorrect string value: ‘\xF0\x9F\x92\x94’ for column ‘name’ at row 1at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073)at com.mysql.jdbc.MysqlIO.checkErrorPack...

2019-03-15 17:53:09 321

翻译 redis安装部署

1,下载安装,编译$ wget http://download.redis.io/releases/redis-4.0.10.tar.gz$ tar xzf redis-4.0.10.tar.gz$ cd redis-4.0.10$ make install部署redis前台启动现在可以直接通过src文件夹下的redis-server启动 进入redis-4.0.6文件夹 执行./src/r...

2018-07-05 23:00:23 168

原创 git 笔记

1、删除分支git branch -D 分支名称2、新建一个远程分支并切换git checkout -b 3、同步代码(2f179b8为某个分支提交的代码id,需要这次提交的代码在另个分支上也有,需要先切换到另外个分支上,执行下面语句)git cherry-pick 2f179b84、还原到某个版本号git reset --hard 587136ed69da5efbab640ccedbef898b...

2018-07-04 22:31:07 1061

原创 nginx 环境搭建以及HTTP和TCP的负载均衡

1:安装工具包 wget、vim和gccyum install -y wget yum install -y vim-enhanced yum install -y make cmake gcc gcc-c++ 2:下载nginx安装包wget http://nginx.org/download/nginx-1.9.7.tar.gz13:安装依赖包yum install -y pcre ...

2018-07-02 17:20:43 727 1

转载 内存溢出常见的情况以及jvm参数配置

对于JVM的内存写过的文章已经有点多了,而且有点烂了,不过说那么多大多数在解决OOM的情况,于此,本文就只阐述这个内容,携带一些分析和理解和部分扩展内容,也就是JVM宕机中的一些问题,OK,下面说下OOM的常见情况:第一类内存溢出,也是大家认为最多,第一反应认为是的内存溢出,就是堆栈溢出:那什么样的情况就是堆栈溢出呢?当你看到下面的关键字的时候它就是堆栈溢出了:ja

2017-11-08 23:32:19 562

原创 activeMQ安全配置及常见问题解决

一.修改控制台密码1.打开conf/jetty.xml,            将property name为authenticate的属性value="false" 改为"true",高版本的已经默认为true了。2.控制台的登录用户名密码保存在conf/jetty-realm.properties文件中,内容如下:# Defi

2017-11-06 20:59:11 14027

转载 activemq linux安装与配置

简单记一下,下载地址 http://activemq.apache.org/download.html一、安装JDK7以上,官方说明:http://activemq.apache.org/version-5-getting-started.html二、创建目录:cd /usrmkdir activemq并上传apache-activemq-5.14.1-bi

2017-11-05 23:56:35 5696

原创 一次线上netty服务端大量CLOSE_WAIT的解决

问题描述:服务端做了一个心跳检测,规定的时间范围内app没有发送数据过来,然后服务器主动close掉这个连接,但是发现并没有真正的关掉,连接而是都处于CLOSE_WAIT状态。解决方案:1.调整linux下/etc/sysctl.conf参数,里面增加net.ipv4.tcp_fin_timeout = 30net.ipv4.tcp_keepalive_time = 60net

2017-11-01 14:50:45 10221 1

转载 使用jstack分析cpu消耗过高的问题

我们使用jdk自带的jstack来分析。当linux出现cpu被java程序消耗过高时,以下过程说不定可以帮上你的忙: 1.top查找出哪个进程消耗的cpu高 21125 co_ad2    18   0 1817m 776m 9712 S  3.3  4.9  12:03.24 java                                                 

2017-10-11 22:28:12 792

转载 JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用详解

摘要: JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps、jstack、jmap、jhat、jstat、hprof等小巧的工具,本博客希望能起抛砖引玉之用,让大家能开始对JVM性能调优的常用工具有所了解。    现实企业级Java开发中,有时候我们会碰到下面这些问题:OutOfMemoryError,内存不足

2017-09-27 21:15:02 382

转载 Netty4底层用对象池和不用对象池实践优化

有用的地址: https://stackoverflow.com/questions随着JVM虚拟机和JIT即时编译技术的发展,对象的分配和回收是个非常轻量级的工作。但是对于缓冲区Buffer,情况却稍有不同,特别是对于堆外直接内存的分配和回收,是一件耗时的操作。为了尽量重用缓冲区,Netty提供了基于内存池的缓冲区重用机制。性能测试表明,采用内存池的ByteBuf

2017-09-26 22:54:05 414

转载 Netty之解决TCP粘包拆包(自定义协议)

1、什么是粘包/拆包       一般所谓的TCP粘包是在一次接收数据不能完全地体现一个完整的消息数据。TCP通讯为何存在粘包呢?主要原因是TCP是以流的方式来处理数据,再加上网络上MTU的往往小于在应用处理的消息数据,所以就会引发一次接收的数据无法满足消息的需要,导致粘包的存在。处理粘包的唯一方法就是制定应用层的数据通讯协议,通过协议来规范现有接收的数据是否满足消息数据的需要。2

2017-08-06 20:48:15 758

原创 实现http/https的代理及证书导入

import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.net.URI;import java.security.KeyStore;import java.security.cert.CertificateEx

2017-02-20 19:52:34 3100

原创 RabbitMQ在Linux下的安装与使用

一、Erlang安装1、RabbitMQ是基于Erlang的,所以首先必须配置Erlang环境.2、wget http://www.erlang.org/download/otp_src_18.0.tar.gz   -- 下载Erlang源码包 3、tar xvzf otp_src_18.0.tar.gz  -- 解压包4、cd 进入解压出来的文件夹

2016-08-23 16:16:13 1354

原创 solr5.X的几个重要配置模板

solr5.X版本里有几个比较重要的配置文件,如data-config.xml、dataimport.properties、managed-schema.txt

2016-08-05 15:21:43 1221

原创 solr5.X版本的拼音搜索

经过几天的研究终于搞定了solr的拼音搜索,现在把经验分享给大家!一、首先需要准备3个jar包,pinyinAnalyzer4.3.1.jar 、pinyin4j-2.5.0.jar、lucene-analyzers-smartcn-5.2.1.jar ,将这三个jar包放到/solr-5.2.1/server/solr-webapp/webapp/WEB-INF/lib 这个目录下。lu

2016-08-05 14:57:38 2345 1

原创 solr 的suggest详细使用

solr suggest检查建议  1.描述        Solr从1.4开始便提供了检查建议,检索建议目前是各大搜索的标配应用,主要作用是避免用户输入错误的搜索词,同时将用户引导到相应的关键词搜索上。Solr内置了检索建议功能,它在Solr里叫做Suggest模块.该模块可选择基于提示词文本做检索建议,还支持通过针对索引的某个字段建立索引词库做检索建议。在诸多文档中都推荐使用基于索

2016-07-25 17:26:23 4741 4

原创 solr 之Field、CopyField、DynamicField

solr的index schema中,除了支持基本数值类型的field,还支持一些特别的field,比如较常用的CopyField。以下面的schema配置片断为例:[html] view plain copyschema name="eshequn.post.db_post.0" version="1.1"        xml

2016-07-19 11:08:03 523

原创 Linux下高并发socket最大连接数所受的各种限制

1、修改用户进程可打开文件数限制在Linux平台上,无论编写客户端程序还是服务端程序,在进行高并发TCP连接处理时,最高的并发数量都要受到系统对用户单一进程同时可打开 文件数量的限制(这是因为系统为每个TCP连接都要创建一个socket句柄,每个socket句柄同时也是一个文件句柄)。可使用ulimit命令查看 系统允许当前用户进程打开的文件数限制:[speng@as4 ~]$ u

2016-07-06 09:53:01 613

原创 JVM 垃圾回收器工作原理及使用实例介绍

垃圾收集基础Java 语言的一大特点就是可以进行自动垃圾回收处理,而无需开发人员过于关注系统资源,例如内存资源的释放情况。自动垃圾收集虽然大大减轻了开发人员的工作量,但是也增加了软件系统的负担。拥有垃圾收集器可以说是 Java 语言与 C++语言的一项显著区别。在 C++语言中,程序员必须小心谨慎地处理每一项内存分配,且内存使用完后必须手工释放曾经占用的内存空间。当内存释放不够完全

2016-06-24 16:57:05 6280

原创 solr查询参数使用说明

q – 查询字符串,必须的。Solr 中用来搜索的查询。有关该语法的完整描述,请参阅 参考资料 中的 “Lucene QueryParser Syntax”。可以通过追加一个分号和已索引且未进行断词的字段的名称来包含排序信息。默认的排序是 score desc,指按记分降序排序。           q=myField:Java AND otherField:developerWorks; d

2016-06-20 16:27:56 455

原创 solr+zookeeper集群搭建

一、前期准备工作相关工具:1.虚拟机(VMware)2.tomcat7 64位  下载地址:http://tomcat.apache.org/download-70.cgi3.centos6.4  64位4.linux下的64位jdk安装包,版本为6或以上5. solr-4.3.1.tgz包  下载:http://archive.apache.org/dist/luce

2016-06-16 19:33:47 10396

原创 分布式事务

前阵子从支付宝转账1万块钱到余额宝,这是日常生活的一件普通小事,但作为互联网研发人员的职业病,我就思考支付宝扣除1万之后,如果系统挂掉怎么办,这时余额宝账户并没有增加1万,数据就会出现不一致状况了。上述场景在各个类型的系统中都能找到相似影子,比如在电商系统中,当有用户下单后,除了在订单表插入一条记录外,对应商品表的这个商品数量必须减1吧,怎么保证?!在搜索广告系统中,当用户点击某广告后,除

2016-06-13 18:14:01 488

转载 redis集群搭建

一、介绍    redis集群是一个可以在多个节点之间进行数据共享的设施,redis集群提供如下两个好处      1:将数据自动切分(split)到多个节点 2:当集群中的某一个节点故障时,redis还可以继续处理客户端的请求。 一个 Redis 集群包含 16384 个哈希槽(hash slot),数据库中的每个数据都属于这16384个哈希槽中的一个。集群使

2016-06-02 17:34:36 1270

原创 Haproxy+keepalived实现高可用负载均衡

一、搭建Haproxy环境  1、下载安装依赖包yum install wget gcc gcc-c++ autoconf automake make  2、下载安装haproxy wget http://pkgs.fedoraproject.org/repo/pkgs/haproxy/haproxy1.4.24.tar.gz/86422620faa9759907563d5

2016-04-27 16:29:46 3191

转载 Netty系列之Netty高性能之道

Netty是一个高性能、异步事件驱动的NIO框架,它提供了对TCP、UDP和文件传输的支持,作为一个异步NIO框架,Netty的所有IO操作都是异步非阻塞的,通过Future-Listener机制,用户可以方便的主动获取或者通过通知机制获得IO操作结果。作为当前最流行的NIO框架,Netty在互联网领域、大数据分布式计算领域、游戏行业、通信行业等获得了广泛的应用,一些业界著名的开源组件也基于N

2016-04-13 14:44:42 417

转载 分布式与集群的区别

简单说,分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率。例如:如果一个任务由10个子任务组成,每个子任务单独执行需1小时,则在一台服务器上执行改任务需10小时。采用分布式方案,提供10台服务器,每台服务器只负责处理一个子任务,不考虑子任务间的依赖关系,执行完这个任务只需一个小时。(这种工作模式的一个典型代表就是Hadoop的

2016-03-04 14:44:10 375

转载 zookeeper集群搭建

zookeeper安装、zookeeper集群安装1.下载 zookeeper-3.4.5.tar.gz地址:http://archive.apache.org/dist/zookeeper/zookeeper-3.4.5/2. 将下载的文件FTP到linux机器上3.将解压并拷贝到/usr/local路径下      tar zxvf zookeeper-

2016-03-03 08:51:11 475

原创 Java之CAS操作

CAS操作CAS是单词compare and set的缩写,意思是指在set之前先比较该值有没有变化,只有在没变的情况下才对其赋值。我们常常做这样的操作[java] view plaincopyprint?if(a==b) {      a++;  }  试想一下如果在做a++之前a的值被改变了怎么办?a++还

2015-11-30 15:20:41 428

原创 几个重要的jvm参数配置及建议

jvm配置参数比较多,只有当经常使用时,才能在脑中不忘。而在现在的工作生活中,大家可能经常跟这些参数打交道的时间还是少之又少,只有当线上的服务出问题是,才会去熟悉。这些是自己工作中调试用到的几个重要的参数,留作以后翻看。1、-XX:+DisableExplicitGC这个将会忽略手动调用GC的代码使得 System.gc()的调用就会变成一个空调用,完全不会触发任何GC。最主要

2015-09-22 10:52:51 1347

原创 Linux下实用的JAVA内存泄露监控命令

内存泄露一直是比较头疼的事情,下面三个命令我个人觉得相当有用。1、jstack (linux下特有)可以观察到jvm中当前所有线程的运行情况和线程当前状态jstack 2083输出内容如下:2、jmap (linux下特有,也是很常用的一个命令)观察运行中的jvm物理内存的占用情况。参数如下:-heap :

2015-09-14 18:23:17 4251

转载 jvm参数详细讲解与配置

不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当的停顿,但GUI停顿是客户无法接受的),而且由于跑在各个机器上的配置不同

2015-09-09 12:17:31 440

原创 十分钟教你学会zookeeper安装和集群搭建(伪集群 )

1. zookeeper介绍ZooKeeper是一个为分布式应用所设计的分布的、开源的协调服务,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,简化分布式应用协调及其管理的难度,提供高性能的分布式服务。ZooKeeper本身可以以Standalone模式安装运行,不过它的长处在于通过分布式ZooKeeper集群(一个Leader,多个Follower),基于一定的策略来保证ZooK

2015-08-28 16:25:24 1693

原创 ICEGrid部署和测试

部署环境:使用4台服务器来部署grid应用,必须把4台服务器的防火墙都关闭Register主服务:192.168.10.11, Register从服务:192.168.11.12,Node1:192.168.10.13Node2:192.168.10.14客户端:192.168.11.44 注:以下是windows下部署方案,linux部署类同,配置文件可以复用。 

2015-08-27 14:17:12 3160 1

原创 Icegrid centos6 环境安装

安装地址:http://www.zeroc.com/download.html#linux 1、安装ice3.5.1的包源#cd /etc/yum.repos.d/#wget http://www.zeroc.com/download/Ice/3.5/el6/zeroc-ice-el6.repo 2、查看ice提供的rpm包#yum list ice* db53* mc

2015-08-27 14:12:31 1232

空空如也

空空如也

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

TA关注的人

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