- 浏览: 61275 次
- 性别:
- 来自: 上海
文章列表
一、简介
为了方便统一管理配置文件管理,使用spring cloud config作为分布式配置中心,国产比较好的有百度的disconf,携程的apollo,这里我们介绍使用spring cloud config。它支持配置服务放在配置服务的内存中(即本地),也支持放在远程Git、SVN等仓库中。在spring cloud config 组件中,分两个角色,一是config server,二是config client。
二、创建Config Server
创建一个spring-cloud项目,取名为config-server,支持maven和gradle,这里配置中心使用 ...
1.pom.xml配置
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.5.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId> ...
1.application.yml配置
##数据连接信息
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource ##指定使用的数据池类
url: "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF8&zeroDateTimeBehavior=convertToNull&autoReconnect=true"
usernam ...
1.配置application.yml、pom.xml
spring:
redis:
host: localhost
port: 6379
pool:
max-active: 200
max-idle: 8
max-wait: -1
min-idle: 0
timeout: 3000
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://mave ...
[置顶] git合并多次提交到一次提交方法
- 博客分类:
- 版本管理工具
使用git checkout branchname切换到对应的分支;
切换到提交多次版本的最后一次提交git reset --soft commit-id
使用git push -f强制push ,OK搞定收工
On this page
Overview
Packages
Init Scripts
Install MongoDB Community Edition
Run MongoDB Community Edition
Uninstall MongoDB Community Edition
Overview
Use this tutorial to install MongoDB Community Edition on Red Hat Enterprise Linux or CentOS Linux versions 6 and 7 using .rp ...
[置顶] redis抢购实现关键代码
- 博客分类:
- NoSQL
在使用redis的时候如果redisTemplate.execute方法执行多条redis命令,则会出现资源无法释放的问题,如果改成redisTemplate.executePipelined则不会出现;
/**
* 更新用户信息并将股票余数减1
*
* @param ppkey
* 队列key:set+mobile
* @param upkey
* 股票余数
* @param rushuser
* @return
*/
protected boolean updateUserAndDecrSt ...
[置顶] (转)如何用消息系统避免分布式事务
- 博客分类:
- 分布式
作者:伯乐在线-meituanalibaba
网址:http://blog.jobbole.com/89140/
前阵子从支付宝转账1万块钱到余额宝,这是日常生活的一件普通小事,但作为互联网研发人员的职业病,我就思考支付宝扣除1万之后,如果系统挂掉怎么办,这时余额 ...
重点设计在数据库层面。
2张表:
第一张:判重表(buy_record),该用户有没秒杀过该商品
字段: id, uid, goods_id, addtime
第二张表:商品表 goods
字段: goods_id goods_num
方案1:
start transaction;
select id from buy_record where uid=$uid and goods_id=$goods_id;
if(结果不为空)
抛异常,回滚。
insert into buy_record。。。
if(受影响行数<=0)
抛异常,回滚。。。 ...
[置顶] Redis 持久化
- 博客分类:
- NoSQL
Redis 提供了不同级别的持久化方式:
RDB持久化方式能够在指定的时间间隔能对你的数据进行快照存储.
AOF持久化方式记录每次对服务器写的操作,当服务器重启的时候会重新执行这些命令来恢复原始的数据,AOF命令以redis协议追加 ...
一.安装必要包
yum install gcc
二.linux下安装
#下载
wget http://download.redis.io/releases/redis-3.0.0.tar.gz
tar zxvf redis-3.0.0.tar.gz
cd redis-3.0.0
#如果不加参数,linux下会报错
make MALLOC=libc
安装好之后,启动文件
#启动redis
src/redis-server &
#关闭redis
src/redis-cli shutdown
测试redis
$ src/redis-cli
127.0.0.1:6379&g ...
package mybatis;
import java.text.DateFormat;
import java.util.Date;
import java.util.List;
import java.util.Locale;
import java.util.Properties;
import org.apache.ibatis.executor.Executor;
import org.apache.ibatis.mapping.BoundSql;
import org.apache.ibatis.mapping.MappedStatement;
...
1.在使用mongodb进行数据存储时,排序字段定义成String则会出现排序错乱的情况,所以排序的字段最好定义成整形(int,double);
2.mongodb不支持Timestamp;
3.使用$geoNear命令时,num属性最好设置一个值,geoNear limit默认是100,否则不管查出有多少都是显示出100;
3.使用aggregate命令的如果有geoNear时,$match最好不要用,使用geoNear中的query属性进行匹配查询,如果不这么作会发现查出的数据不准确;
4.在mongodb查询的条件,一个字段在查询条件中只能出现一次(例如sql中age>1 and a ...
需求:有很多条件,其中包括根据附近多少米查找信息,这个需要先定位当前人所在的位置(即经纬度),然后在进行这个经纬度的附近进行查找信息,因为之前根据经纬度算地理空间位置是在mysql中进行的,但是发现在mysql中计算很耗CPU,现特改成mongodb来做,mongodb不支持union all功能,所以mongodb还是不满足:
//判断是否按距离排序
if(seq == 1 || seq == 0 || seq == 4){
//默认排序统一采用综合排序
if(seq == 0){
seq = 4;
}
...
在aggregate只能通过$group中的$sum来进行统计,如果sales表中有下面数据:
{ "_id" : { "month" : 3, "day" : 15, "year" : 2014 }, "totalPrice" : 50, "averageQuantity" : 10, "count" : 1 }
{ "_id" : { "month" : 4, "day" : 4, &qu ...