- 博客(62)
- 资源 (27)
- 收藏
- 关注
原创 Spring Cloud 第七篇:高可用分布式配置中心(Spring Cloud Config)
项目地址 spring-cloud-config-server7.1 简介在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。在Spring Cloud中, 有分布式配置中心组件spring cloud config ,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程Git仓库中。在spring cloud config 组件中,分两个...
2018-06-06 15:50:24
398
原创 Spring Cloud 第六篇: 路由网关(zuul)
项目源码:module:spring-cloud-service-zuul在Spring Cloud微服务系统中,一种常见的负载均衡方式是,客户端的请求首先经过负载均衡(zuul、Ngnix),再到达服务网关(zuul集群), 然后再到具体的服。,服务统一注册到高可用的服务注册中心集群,服务的所有的配置文件由配置服务管理,配置服务的配置文件放在git仓库,方便开发人员随时改配置。6.1 ...
2018-06-06 15:48:44
262
原创 Spring Cloud 第五篇: 断路器(Hystrix)
在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC),在Spring Cloud可以用RestTemplate+Ribbon和Feign来调用。 为了保证其高可用,单个服务通常会集群部署。由于网络原因或者自身的原因,服务并不能保证100%可用,如果单个服务出现问题,调用这个服务就会出现线程阻塞, 此时若有大量的请求涌入,Servlet容器的线程资源会被消耗完毕,导致服...
2018-06-06 15:46:23
250
原创 Spring Cloud 第四篇: 服务消费者(Feign)
项目源码 module:spring-cloud-feigon上面,讲述了如何通过RestTemplate+Ribbon去消费服务,这里主要讲述如何通过Feign去消费服务。4.1 Feign简介 Feign是一个声明式的伪Http客户端,它使得写Http客户端变得更简单。使用Feign,只需要创建一个接口并注解。它具有可插拔的注解特性, 可使用Feign 注解和JAX-RS注解。Feign支持...
2018-06-06 15:45:30
370
原创 Spring Cloud 第三篇:服务消费者(rest+ribbon)
项目地址 module:spring-cloud-service-ribbon在微服务架构中,业务都会被拆分成一个独立的服务,服务与服务的通讯是基于http restful的。 Spring cloud有两种服务调用方式,一种是ribbon+restTemplate,另一种是feign。在这一篇文章首先讲解下基于ribbon+rest。3.1 ribbon简介ribbon是一个负载均衡客户端,可...
2018-06-06 15:43:39
290
原创 spring cloud 第二篇: 创建一个服务提供者 (eureka client)
项目地址:module:spring-cloud-service-a2.1 创建项目创建过程同server类似,POM引用: <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g...
2018-06-06 15:41:33
1191
原创 spring-cloud 第一篇: eureka 服务注册
module:spring-cloud-eureka-server1.1 添加Pom引用<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifac...
2018-06-06 15:39:02
181
原创 redis 集群启动报错:ERR Invalid node address specified: node-200:7200 (Redis::CommandError)
redis 集群启动报错:>>> Nodes configuration updated>>> Assign a different config epoch to each node>>> Sending CLUSTER MEET messages to join the cluster/opt/ruby/lib/ruby/gems/2.3.0/gems/redis-3.3.
2018-01-25 14:40:24
3351
原创 redis集群 Waiting for the cluster to join 一直等待
redis集群创建执行./redis-trib.rb create --replicas 1 XXXX:PORT1 XXXX:PORT2 ....的时候一直等待 Waiting for the cluster to join 很久都没有反应原因:redis集群不仅需要开通redis客户端连接的端口,而且需要开通集群总线端口集群总线端口为red
2018-01-25 14:35:28
3533
原创 redis安装zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
http://blog.youkuaiyun.com/libra_ts/article/details/71195128
2018-01-24 14:06:00
1121
转载 创建redis集群报错 /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:55:in `require': cannot load
http://blog.youkuaiyun.com/ahzxj2012/article/details/73468119
2018-01-24 14:03:45
2178
原创 ELasticsearch 基本操作
1.创建索引PUT http://node-131:9200/people{ "settings" :{ "number_of_shareds":3, "number_of_replices":1 }, "mappings":{ "man":{ "properties":{ "name":{ "type":
2017-09-18 16:08:23
466
原创 Maven 打包可执行jar
有点时候我们项目不是通过IDEA 向导生成的spring-boot项目文件,我们直接打出的jar包,通过java -jar xxxx.jar命令执行,报出xxx.jar中没有清单属性错误,这个时候我们需要指定jar的main入口和在jar包的MANIFEST.MF文件中生成Class-Path属性, 我们修改pom.xml文件:<build> <plugins>
2017-09-08 17:27:53
1029
原创 Kafka 实例
首先引入相关jar <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka-clients</artifactId> <version>0.10.0.1</version> </dependency> <
2017-09-07 19:03:41
360
原创 Kafka入门
1.简介官网简介Kafka 是一个分布式流媒体平台。 Kafka有三大关键功能:它允许我们发布和订阅记录流,这类似于消息队列或者消息传递系统。它允许我们以容错机制存储记录流它允许我们实时处理记录流Kafka 擅长于做什么呢?在系统或者应用间构建实时的数据流通道。对于数据的传输或者转换构建实时的数据流处理程序Kafka是如何工作的呢? 首先介绍几个概念:kafka 是建立在一台或
2017-09-07 18:19:44
280
原创 Centos7 安装Kafka集群
准备好三台主机: Node-131 Node-132 Node-133 下载解压:从官网下载Kafka 安装包,解压安装: tar zxvf kafka_xxx.tgz mv kafka_xxx kafka cd kafka启动Zookeeper集群zookeeper集群搭建参考之前的文章 http://blog.youkuaiyun.com/sunjiaminaini/article/deta
2017-09-05 15:54:53
2429
原创 Java的Executor框架和线程池实现原理
一 Java的Executor框架图1.Executor接口public interface Executor { /** * Executes the given command at some time in the future. The command * may execute in a new thread, in a pooled thread, or in
2017-09-04 14:18:45
292
转载 Java并发编程-无锁CAS与Unsafe类及其并发包Atomic
在前面一篇博文中,我们曾经详谈过有锁并发的典型代表synchronized关键字,通过该关键字可以控制并发执行过程中有且只有一个线程可以访问共享资源,其原理是通过当前线程持有当前对象锁,从而拥有访问权限,而其他没有持有当前对象锁的线程无法拥有访问权限,也就保证了线程安全。但在本篇中,我们将会详聊另外一种反向而行的并发策略,即无锁并发,即不加锁也能保证并发执行的安全性。 本篇的思路是先阐明无锁执
2017-08-31 19:00:25
278
原创 公平锁和非公平锁
公平锁: Threads acquire a fair lock in the order in which they requested it 非公平锁: a nonfair lock permits barging: threads requesting a lock can jump ahead of the queue of waiting threads if the lock h
2017-08-28 10:51:21
601
原创 Hbase集群搭建及Shell使用
准备三台机器node-131 node-132 node-133 这里为主机名,也可写入IP,主机名需要在/etc/hosts文件里加入对应节点信息。Hbase启动依赖于zookeeper集群和Hadoop集群, 在配置Hbase前先搭建好Zookeeper和Hadoop环境 具体搭建请参考前面两篇文章 Zookeeper集群配置 Hadoop集群安装 方便集群启动所机器请先做
2017-08-25 15:09:15
3905
原创 Hadoop集群安装
node-131 node-132 node-133 这里为主机名,也可写入IP,主机名需要在/etc/hosts文件里加入对应节点信息。下载https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.7.4/hadoop-2.7.4.tar.gz安装1.解压进入/usr/local.hadoop/目录,将下载的文
2017-08-25 14:31:30
4636
原创 Zookeeper集群配置
准备三台机器node-131 node-132 node-133 这里为主机名,也可写入IP,主机名需要在/etc/hosts文件里加入对应节点信息。下载zookeeper包http://mirrors.hust.edu.cn/apache/zookeeper/stable/zookeeper-3.4.10.tar.gz安装1.解压 进入指定目录,解压命令: Tar -zxvf
2017-08-25 14:07:38
4971
原创 运行shell脚本,错误:-bash: ./xxx.sh: /bin/bash^M: bad interpreter: No such file or directory
今天准备写一个脚本一次性启动zookeeper,hadoop,hbase。发现执行脚本报如下错误: 他报错找不到该文件或者目录,发现明明就有的啊.主要原因是 我在windows下编辑然后上传到Linux系统里执行的。.sh文件的格式为dos格式。而linux只能执行格式为unix格式的脚本。1.首先用vi命令打开文件2.在vi命令模式中使用 :set ff 命令返回的结
2017-08-25 10:28:36
2783
1
原创 Linux服务器间做免密钥登录
Linux服务器间做免密钥登录有三台主机:Root@192.168.222.131Root@192.168.222.132Root@192.168.222.133 新建 /root/.ssh目录d到该目录(目录地址可自己定义)1.对每台机器运行ssh-keygen -t rsa指令期间会出现三条需要你输入的选项Enter file i
2017-08-24 15:33:17
4967
原创 Redis 集群搭建
1.创建多个节点,基本配置如下:port 7000 //端口7000,7002,7003 bind 本机ip //默认ip为127.0.0.1 需要改为 其他节点机器可访问的ip 否则创建集群时无法访
2017-08-22 16:31:23
3020
原创 Linux 复制文件
复制文件,只有源文件较目的文件的修改时间新时,才复制文件 cp -u -v file1 file2 .将文件file1复制成文件file2 cp file1 file2 .采用交互方式将文件file1复制成文件file2 cp -i file1 file2 .将文件file1复制成file2,因为目的文件已经存在,所以指定使用强制复制
2017-08-22 16:27:48
2371
原创 linux解压文件命令
tar -xJf node-v4.4.4-linux-x64.tar.xz 1、*.tar 用 tar -xvf 解压 2、*.gz 用 gzip -d或者gunzip 解压 3、.tar.gz和.tgz 用 tar -xzf 解压 4、*.bz2 用 bzip2 -d或者用bunzip2 解压 5、*.tar.bz2用tar -xjf 解压 6、*.Z 用 uncompress 解压
2017-08-22 16:27:15
1823
原创 ubnntu安装jdk
1.添加ppa sudo add-apt-repository ppa:webupd8team/java sudo apt-get update2.安装oracle-java-installer jdk7 sudo apt-get install oracle-java7-installer jdk8 sudo apt-get install oracle-java8-installer
2017-08-22 16:26:19
1671
原创 linux 端口开放
安装iptables apt-get install iptables安装好了之后就可以添加规则了 iptables -I INPUT -p tcp –dport 80 -j ACCEPT然后可以直接保存了 iptables-save持久化iptables 上文那样做只是暂时保存了开放端口的信息,如果服务器重启,保存的信息就掉了,所以我们需要持久化一下端口信息,这里我们使用 iptables
2017-08-22 16:25:28
1532
原创 linux 安装SSH
(1)关闭防火墙,执行sudo ufw disable(不一定需要) (2)安装OpenSSH,执行sudo apt-get install openssh-server openssh-client命令。 (3)执行netstat -tnl命令,查看22端口是否开通。
2017-08-22 16:24:26
821
原创 Linux 常用命令
查看tomcat运行日志 tail -f catalina.out启动tomcat ./startup.sh设置文件可读可写可执行:chmod 777 index.html 或者 chmod -R a+w 目录名linux 查看网速:watch -n 1 “/sbin/ifconfig eth0 | grep bytes”ps 命令用于查看当前正在运行的进程: ps -ef | grep javal
2017-08-22 16:23:44
781
转载 MySQL必知必会知识点总结一二
一、MySQL官方文档地址https://dev.mysql.com/doc/refman/5.7/en/二、MySQL常用命令1、如何登陆MySQL数据库mysql -u username -p2、如何开启/关闭mysql服务service mysql start/stop3、查看mysql的状态service mysql stat
2017-08-18 16:07:52
3573
1
转载 MySQL存储引擎MyISAM与InnoDB区别总结整理
1、MySQL默认存储引擎的变迁在MySQL 5.1之前的版本中,默认的搜索引擎是MyISAM,从MySQL 5.5之后的版本中,默认的搜索引擎变更为InnoDB。2、MyISAM与InnoDB存储引擎的主要特点MyISAM存储引擎的特点是:表级锁、不支持事务和全文索引,适合一些CMS内容管理系统作为后台数据库使用,但是使用大并发、重负荷生产系统上,表锁结构的特性就显得
2017-08-18 16:06:21
792
转载 mysql数据库分库分表策略的具体实现方案
相关文章:1、 使用Spring AOP实现MySQL数据库读写分离案例分析2、MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解:http://blog.youkuaiyun.com/xlgen157387/article/details/513312443、MySQL主从复制的常见拓扑、原理分析以及如何提高主从复制的效率总结:http:/
2017-08-18 16:04:39
3762
转载 MySQL 清除表空间碎片
碎片产生的原因(1)表的存储会出现碎片化,每当删除了一行内容,该段空间就会变为空白、被留空,而在一段时间内的大量删除操作,会使这种留空的空间变得比存储列表内容所使用的空间更大;(2)当执行插入操作时,MySQL会尝试使用空白空间,但如果某个空白空间一直没有被大小合适的数据占用,仍然无法将其彻底占用,就形成了碎片;(3)当MySQL对数据进行扫描时,它扫描的对象实际是列表的容
2017-08-18 16:02:30
824
转载 MySQL开发规范与使用技巧总结
1.库名、表名、字段名必须使用小写字母,并采用下划线分割。 a)MySQL有配置参数lower_case_table_names,不可动态更改,Linux系统默认为 0,即库表名以实际情况存储,大小写敏感。如果是1,以小写存储,大小写不敏感。如果是2,以实际情况存储,但以小写比较。 b)如果大小写混合使用,可能存在abc,Abc,ABC等多个表共存,容易导致混乱。 c)字段名显示区分大
2017-08-18 16:01:20
3518
转载 mysql常见面试题
1、如何登陆mysql数据库MySQL -u username -p2、如何开启/关闭mysql服务service mysql start/stop3、查看mysql的状态service mysql status4、如何显示数所有数据库show databases5、如何获取表内所有字段对象的名称和类型describe tab
2017-08-18 16:00:15
3569
转载 并发控制中的乐观锁与悲观锁
为什么需要锁?在多用户环境中,在同一时间可能会有多个用户更新相同的记录,这会产生冲突。这就是著名的并发性问题。2典型的冲突类型:(1)丢失更新:一个事务的更新覆盖了其它事务的更新结果,就是所谓的更新丢失。例如:用户A把值从6改为2,用户B把值从2改为6,则用户A丢失了他的更新。(2)脏读:当一个事务读取其它完成一半事务的记录时,就会发生脏读取。例如:用户A,B看
2017-08-18 15:57:46
806
转载 数据库的隔离级别与事务的特性
数据库的隔离级别分类1.Read Uncommited(未提交读):没有提交就可以读取到数据(发出了insert,但没有commit就可以读取到);2.Read Commited(提交读):只有提交后才可以读;3.Repeatable Read(可重复读):MySQL默认级别,必须提交才能看到,读取数据是数据被锁住;4.Serialiazable(序列化读):最高隔
2017-08-18 15:56:55
787
转载 使用mysqlreplicate命令快速搭建 Mysql 主从复制
MySQL的Replication(英文为复制)是一个多MySQL数据库做主从同步的方案,特点是异步复制,广泛用在各种对MySQL有更高性能、更高可靠性要求的场合。与之对应的是另一个同步技术是MySQL Cluster,但因为MySQL Cluster配置比较复杂,所以使用者较少。(可参考:http://blog.youkuaiyun.com/xlgen157387/article/details/5
2017-08-18 15:53:46
859
制作登录界面
2011-11-23
制作小动画
2011-11-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人