java,架构相关技术专家
OSSFS将OSS bucket 挂载到本地文件系统及注意事项 下载ossfs安装包 wget http://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/attach/32196/cn_zh/1463121229943/ossfs_1.
quartz集群报错but has failed to stop it. This is very likely to create a memory leak. 在一台配置1核2G内存的阿里云服务器上运行quartz;执行定时任务报如下异常,而在本地开发环境中则正常运行。
Intellij IDEA 14 作为Java IDE 神器,接触后发现,非常好用,对它爱不释手,打算离开eclipse和myeclipse,投入Intellij IDEA的怀抱。 然而在使用的过程中会发现Intellij IDEA也有一些不尽如意的地方,难免会有些不爽:Intellij IDEA 的插件库远不及eclipse的丰富。
通常情况下,为了提高系统开发的灵活性和可维护度,我们会采用消息队列队系统进行解耦。下面是一个采用spring redis实现的消息队列实例,但此实例会由于网络延迟和阻塞等情况导致消息处理的延时,因而不能确保消息处理的顺序,所以使用时需要注意。
Spring基础知识 利用spring完成松耦合 接口 public interface IOutputGenerator { public void generateOutput(); } 实现类 csv输出 public class CsvOutputGenerator implemen...
pom.xml中添加依赖 mysql mysql-connector-java 5.1.38 com.alibaba druid 1.0.20 属性配置文件:system-config.
spring quartz分布式任务计划 环境: 通过maven管理的spring mvc工程,且已经成功连接数据库。 数据库表结构 /*Table structure for table `qrtz_calendars` */ DROP TABLE IF EXISTS `qrtz_calenda...
spring jpa 实体互相引用返回restful数据循环引用报错的问题 Java实体里两个对象有关联关系,互相引用,比如,在一对多的关联关系里 Problem对象,引用了标签列表ProblemLabel ProblemLabel对象,引用了所属Problem 这样构成了互相引用,导致递归循环内存溢出异常: org.
本文转自:http://www.cnblogs.com/top15from/p/4899954.html ZBUS = MQ + RPC + PROXY 支持消息队列, 发布订阅, RPC, 代理(TCP/DMZ) 亿级消息堆积能力、支持HA高可用 单个Jar包无依赖 ~300K 服务代...
centos vim配置高亮语法和格式化粘贴 设置vim别名和高亮grep词语 echo -e "\nalias vi=vim\nalias grep='grep --color'\n" >>~/.bashrc && source ~/.
spring boot redis缓存JedisPool使用 添加依赖pom.xml中添加如下依赖 org.springframework.boot spring-boot-starter-redis redis配置文件 # REDIS (RedisProperties) # Redis数据库索引(默认为0) spring.
Spring AOP基于配置文件的面向方法的切面 Spring AOP根据执行的时间点可以分为around、before和after几种方式。 around为方法前后均执行 before为方法前执行 after为方法后执行 这里只对around的方式进行介绍。
mysql性能优化 sql语句优化 如何发现有问题的sql? 开启mysql慢查询 show variables like 'slow_query_log' set global slow_query_log_file='/var/mysql/mysql_log/mysql-slow.
zookeeper部署及集群测试 环境 三台测试机 操作系统: centos7 ; hostname: c1 ; ip: 192.168.1.80 操作系统: centos7 ; hostname: c2 ; ip: 192.168.1.81 操作系统: centos7 ; hostname: c3 ; ip: 192.168.1.82 备注 注意要关闭防火墙 查看磁盘状况 为了避免磁盘使用不均而导致系统问题,因而先查看磁盘的分布情况。
flume与kafka整合 前提: flume安装和测试通过,可参考:http://www.cnblogs.com/rwxwsblog/p/5800300.html kafka安装和测试通过,可参考:http://www.cnblogs.com/rwxwsblog/p/5800224.html 在上诉条件满足的情况下才能进行flume和kafka的整合。
CentOS 7部署flume 准备工作: 安装java并设置java环境变量,在`/etc/profile`中加入 export JAVA_HOME=/usr/java/jdk1.8.0_65 export PATH=$PATH:$JAVA_HOME/bin 注意事项 需要启动多个shell脚本交互客户端进行验证,运行中的客户端不要停止。
CentOS 7部署Kafka和Kafka集群 注意事项 需要启动多个shell脚本交互客户端进行验证,运行中的客户端不要停止。 准备工作: 安装java并设置java环境变量,在`/etc/profile`中加入 export JAVA_HOME=/usr/java/jdk1.
centos7时间同步和时区设置 安装ntp服务的软件包 sudo yum install ntp 将ntp服务设置为缺省启动 systemctl enable ntpd 修改启动参数,增加-g -x参数,允许ntp服务在系统时间误差较大时也能正常工作 sudo vi /etc/sysconfig/ntpd 启动ntp服务 sudo service ntpd restart 将系统时区改为上海时间 (亦即CST时区) ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 查看时间是否正确 执行date命令即可。
linux多线程下载工具mwget 经常使用wget进行文件下载,然而wget的处理速度并不如人意。遇到一些国外的站点,经常慢得像蜗牛一般。然而为了解决这个问题,便有了mwget;m表示multi多线程的意思。
MySQL服务器参数介绍 mysql参数介绍(客户端中执行),尽量只修改session级别的参数。 全局参数(新连接的session才会生效,原有已经连接的session不生效) set global 参数名=参数值; set @@global.
mongodb 基础知识 运行环境 CentOS Linux release 7.2.1511 (Core) 安装 wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.
cas 单点登录出现org.jasig.cas.client.util.CommonUtils.getResponseFromServer - 拒绝连接 Connection refused 环境: CentOS Linux release 7.2.1511 (Core) cas-client-core-3.1.12.jar 最近在对cas环境进行切换,原来好好的环境。
mysql性能优化 硬件对数据库的影响 CPU资源和可用内存大小 服务器硬件对mysql性能的影响 我们的应用是CPU密集型? 我们的应用的并发量如何? 数量比频率更好 64位使用32位的服务器版本 32位不能使用超过4G的内容,因此选择的时候需要注意。
yum install 安装时报yum doesn't have enough cached data to continue. 安装epel,yum -y install epel-release后,yum安装时出现如下异常: [root@ec-cache ~]# yum install gcc ...
python 3.5.2安装mysql驱动报错 python 3.5.2安装mysql驱动时出现如下异常: [root@localhost www]# pip install mysql-connector-python Collecting mysql-connector-python Cou...
mysql创建用户 创建用于localhost连接的用户并指定密码 mysql> create user 'pcom'@'localhost' identified by 'aaa7B2249'; Query OK, 0 rows affected (0.
修改/etc/ssh/sshd_config vi /etc/ssh/sshd_config #Port 22 //这行去掉#号,防止配置不好以后不能远程登录,还得去机房修改,等修改以后的端口能使用以后在注释掉 Port 33378 //下面添加这一行 修改firewal...
centos 7 升级后yum install出现Exiting on user cancel centos 7.x升级后用yum install进行安装时经常出现Exiting on user cancel,例如: [root@localhost ~]# yum install logstash ...
转自:http://sloger.info/posts/systemd-failed-to-start-redis-in-gentoo 今天启动 Redis 时阻塞很长时间,之后显示启动失败,启动状态如下。
redis 异常解决办法 26069:M 08 Aug 17:06:58.858 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
用普通用户通过sudo进行启动tomcat时报如下异常 tomcat user 不在 sudoers 文件中。此事将被报告。 这是由于sudo命令使用root用户执行命令。而处于安全性的考虑,一般不允许执行。
svn迁移到git仓库并保留commit历史记录 最近在做svn迁移到gitlab,由于之前一直是由svn做版本控制。最简单的方式是将svn的内容export出来,然后添加到gitlab即可。但是,如果svn用的时间很长了,而且很多commit,我们希望保存svn commit的信息以便做版本的控制和比较。
CentOS更新yum源 1、备份 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup 2、下载新的CentOS-Base.
django 添加comments app 参看 django comments 文档 安装和配置comments 1.安装comments,运行:pip install django-contrib-comments命令 2.
python virtualenv环境运行django 安装前准备 检查pip版本与python版本是否一致 [root@localhost bin]# whereis pip pip: /usr/bin/pip /usr/bin/pip2.
centos 7 python2.7.5升级到3.5.2 下载python3.5.2 wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.
通过git的diff命令对两个commit id的版本进行差异化的对比。中文文件时出现乱码。 git diff 6bded8d0c1fe1746c122121217dc0c88667091089 a9b87b07908a446a5471b233232ade2dbd0734d8 --name-only "markdown/2016/07/\345\210\206\346\224\257\346\265\213\350\257\225.md" 执行如下命令,修改core.quotepath参数即可。
一个通过Canvas和Paint截取无锯齿圆形图片。 /** * 根据原图和变长绘制圆形图片 * * @param source * @param min * @return */ public st...
转自:http://ourmysql.com/archives/1343 前段时间,一大早上,就收到报警,警告php-fpm进程的数量超过阈值。最终发现是一条sql没用到索引,导致执行数据库查询慢了,最终导致php-fpm进程数增加。
一朋友最近新上线一个项目,本地测试环境跑得好好的,部署到线上却慢得像蜗牛一样。后来查询了一下发现一个sql执行了16秒,有些长的甚至80秒。本地运行都是毫秒级别的查询。下面记录一下困扰了两天的,其中一条sql的优化。
平常在写shell脚本都是用$1,$2....这种方式来接收参数,然而这种接收参数的方式不但容易忘记且不易于理解和维护。Linux常用的命令都可指定参数名和参数值,然而我们怎样才能给自己的shell脚本也采用参数名和参数值这样的方式来获取参数值呢?而不是通过$1,$2这种方式进行获取。
查看commit id git log --pretty=format:"%h" git log --pretty=format:"%H" 获取两个版本间差异的文件列表(最好是通过git log --pretty=format:"%H",获取完整的commit id,否则linux下有可能报错。
最近用jenkins+gitlab+ansible做持续化集成,自动化部署和版本回滚。然而deploy plugin没能做到增量升级和回滚操作,折腾了很久决定自己写个脚本来简单实现。 环境: centos 7.0 64位 gitlab:v2.9.0 git:2.9 jenkins 1.651.3、git plugin、GitLab Plugin、Dynamic Parameter Plug-in等 ansible:2.1.0.0 各工具职能: 1、gitlab做版本管理 2、jenkins根据指定参数,分别执行部署或回滚操作;以及执行结果的展现和记录。
通常情况下使用cp -rf进行文件或者文件夹的管理时一般就不再提醒是否覆盖。然而在内网的一台机器上使用cp -rf却提示是否覆盖。难道和常用的命令不同? [root@xxxx test]# cp -rf ./files/ ./bak/ cp:是否覆盖"./bak/files/test.txt"? cp:是否覆盖"./bak/files/hh.txt"? cp:是否覆盖"./bak/files/child/child.txt"? 后来发现是别名引起的问题。
在集成jenkins和ansible实现自动化部署时,root用户下执行ansible命令时可以正常运行。由于是通过jenkins用户去执行ansible命令,而jenkins用户却报如下异常: XXXXXXX | UNREACHABLE! => { "changed": fa...
通过ansible执行远程命令时报如下异常: Error: ansible requires the stdlib json or simplejson module, neither was found! 这是由于ansible执行远程命令或脚本需要python和python-simplejson的支持,如果python版本大于2.5则安装python即可,如果小于2.5则需要安装python和python-simplejson。
本地机器生成公钥和私钥 ssh-keygen -t rsa 一路回车,最后会在~/.ssh目录下生成id_rsa和id_rsa.pub这两个文件。 与远程服务器建立信任机制 ssh-copy-id -i /root/.ssh/id_rsa.pub -p 远程服务器ssh端口 root@远程服务器IP 输入密码,成功连接后。
jenkins整合gitlab时,Source Code Management添加gitlab仓库路径无论怎么尝试都报如下两个异常: Failed to connect to repository : Command "git ls-remote -h git@xxxxx.
无论是anroid还是ios,气泡消息提醒再正常不过了。然而要定义一个气泡消息提醒确要费一番周折。下面记录下气泡提醒布局。 定义气泡背景shape_unread_message_bg.xml 定义气泡布局,关键点是android:layout_gravity="top|right" 此处需要注意的是,如果数字过大。
mysql无法正常启动,查看日志报如下异常 2016-07-07T01:06:32.929615Z 0 [ERROR] Fatal error: Please read "Security" section of the manual to find out how to run mysqld as root! 2016-07-07T01:06:32.