随笔分类 -  分布式环境开发

分布式环境开发
摘要:电商网站的商品详情页系统架构 1 小型电商架构: 小型电商网站的页面展示采用页面全量静态化的思想。数据库中存放了所有的商品信息,页面静态化系统,将数据填充进静态模板中,形成静态化页面 推入 Nginx 服务器。用户浏览网站页面时,取用一个已经静态化好的 html 页面,例如freemarker,th 阅读全文
posted @ 2019-04-22 14:19 菩提树下的丁春秋 阅读(1412) 评论(0) 推荐(0)
摘要:1 hystrix是什么 在分布式系统中,每个服务都可能会调用很多其他服务,被调用的那些服务就是依赖服务,有的时候某些依赖服务出现故障也是很正常的。 Hystrix 可以让我们在分布式系统中对服务间的调用进行控制,加入一些调用延迟或者依赖故障的容错机制。 Hystrix 通过将依赖服务进行资源隔离, 阅读全文
posted @ 2019-04-22 13:52 菩提树下的丁春秋 阅读(470) 评论(0) 推荐(0)
摘要:前言: 随着互联化的蔓延,各种项目都逐渐向分布式服务做转换。如今微服务已经普遍存在,本地事务已经无法满足分布式的要求,由此分布式事务问题诞生。 分布式事务被称为世界性的难题, 目前分布式事务存在两大理论依据:CAP定律 BASE理论。 数据库事物: 数据库事物 是指作为单个逻辑工作单元执行的一系列操 阅读全文
posted @ 2019-02-27 10:38 菩提树下的丁春秋 阅读(354) 评论(0) 推荐(0)
摘要:系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结。生成ID的方法有很多,适应不同的场景、需求以及性能要求。所以有些比较复杂的系统会有多个ID生成的策略。下面就介绍一些常见的ID生成策略。 系统唯一ID是我们在设计一个系统的时候常常会遇见的问题,也常常为这个问题而纠结。生 阅读全文
posted @ 2019-02-20 16:07 菩提树下的丁春秋 阅读(407) 评论(0) 推荐(0)
摘要:首先pom.xml yml 启动类: 结果类: 上传类: api测试类: postman测试: 将地址拼接: 就可以看如下结果., 这个也可以为单独的文件上传服务, 阅读全文
posted @ 2019-02-14 10:31 菩提树下的丁春秋 阅读(295) 评论(0) 推荐(0)
摘要:秒杀注意事项以及整体简略设计 1.如何解决卖超问题 --在sql加上判断防止数据边为负数 --数据库加唯一索引防止用户重复购买--redis预减库存减少数据库访问 内存标记减少redis访问 请求先入队列缓冲,异步下单,增强用户体验 注册功能 -- 如果有前端的牛人加入修改几个页面那是再好不过了哈哈 阅读全文
posted @ 2019-02-08 21:07 菩提树下的丁春秋 阅读(518) 评论(0) 推荐(0)
摘要:现在做的社区管理项目分为三端:web,app,小程序端,要做到三端适配,那么就存在用户登录的问题,那么就需要考虑如何做到三端适配问题,所以就随便记录了cookie,session,token问题; 1.什么是Cookie? Cookie 技术产生源于 HTTP 协议在互联网上的急速发展。随着互联网时 阅读全文
posted @ 2019-02-08 20:47 菩提树下的丁春秋 阅读(355) 评论(0) 推荐(0)
摘要:在上篇中是写死的,这章就写出通用的 测试: 阅读全文
posted @ 2019-01-30 17:34 菩提树下的丁春秋 阅读(953) 评论(0) 推荐(0)
摘要:这个是工具类 这个是测试类 可以看出是唯一的,那么在电商生产中可以加上分库分表的id+在模块+userid,加上日期就是唯一的了,不管是任何请求这个id都是唯一的,即使是在分布式环境下 阅读全文
posted @ 2019-01-30 17:29 菩提树下的丁春秋 阅读(1644) 评论(0) 推荐(0)
摘要:在笔者换jar包时候出现问题: 这个是缺少了zookeeper的依赖,所以引入那个依赖就可以解决了 阅读全文
posted @ 2019-01-30 11:51 菩提树下的丁春秋 阅读(604) 评论(0) 推荐(0)
摘要:这个模块是一个独立的模块所以需要建立一个模块, 首先引入: 依赖pom.xml 编写启动类: 编写yml文件: 注意事项: 二: 访问体验: 阅读全文
posted @ 2019-01-29 13:10 菩提树下的丁春秋 阅读(1230) 评论(0) 推荐(0)
摘要:Hystrix Dashboard是Hystrix的仪表盘组件,主要用来实时监控Hystrix的各项指标信息,通过界面反馈的信息可以快速发现系统中存在的问题。 整合快速体验: pom.xml(这个是F系之后的依赖) 之前的使用: 启动类上加 启动类配置@EnableHystrixDashboard注 阅读全文
posted @ 2019-01-29 11:49 菩提树下的丁春秋 阅读(957) 评论(0) 推荐(0)
摘要:首先在代码里面引入依赖: 这个依赖包括了前几个依赖,所以引入一个就可以了 可以点进这个依赖看下: 所以只需要引入刚才那个依赖就可以了 yml 配置: 然后docker安装zipkin 启动zipkin 在浏览器输入地址: 然后启动服务: 服务调用成功: 可以看到每个服务的调用时间,可以进行优化相关配 阅读全文
posted @ 2019-01-29 11:00 菩提树下的丁春秋 阅读(2582) 评论(0) 推荐(0)
摘要:一:编译器报错 这个地方是由于没有被spring管理,编译器报错,可以选择加上@comoponent这个注解 也可以选择不加,启动程序是不会报错的. 二 报错为空: 这个主要看最后一个是参数不存在的错误 说明问题: 问题解决方法 阅读全文
posted @ 2019-01-28 19:26 菩提树下的丁春秋 阅读(1093) 评论(0) 推荐(0)
摘要:一:Feign简介 Feign 是一种声明式、模板化的 HTTP 客户端,在 Spring Cloud 中使用 Feign,可以做到使用 HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程方法,更感知不到这是个 HTTP 请求。 Feign 的灵感来源于 Retrofi 阅读全文
posted @ 2019-01-28 19:18 菩提树下的丁春秋 阅读(2105) 评论(0) 推荐(0)
摘要:我在RestTemplate的配置类里使用了 @LoadBalanced@Componentpublic class RestTemplateConfig { @Bean @LoadBalanced public RestTemplate restTemplate(){ return new Res 阅读全文
posted @ 2019-01-28 18:48 菩提树下的丁春秋 阅读(19461) 评论(0) 推荐(1)
摘要:搭建服务模块为了模拟正式开发环境,只是少写了service层直接在controller里面直接引用,直接上图和代码:更为方便: 创建完成之后加入配置: pom.xml文件: 这个插件中加入了自动生成代码插件: mybatis_generator.xml yml文件: 笔者在这个文件配置时候出现很多问 阅读全文
posted @ 2019-01-28 17:20 菩提树下的丁春秋 阅读(603) 评论(0) 推荐(0)
摘要:首先搭建父工程: 点击next父工程就搭建完成; pom.xml文件: 可以修改springboot得版本,还有springcloud得版本进行控制,然后将eureka的依赖删除了 但是要注意 https://projects.spring.io/spring-cloud/ 阅读全文
posted @ 2019-01-28 15:59 菩提树下的丁春秋 阅读(411) 评论(0) 推荐(0)
摘要:不罗嗦直接上代码结构与工程目录: 这个是主工程目录: pom.xml consumer目录与pom.xml prdeucer和pom.xml 接下来是代码: 消费者和生产者代码是配置一样的 yml的配置 也是一样的,只需要改下启动端口: 生成者文件: 消费者监听代码: 启动类: 执行结果: 阅读全文
posted @ 2019-01-28 10:56 菩提树下的丁春秋 阅读(374) 评论(0) 推荐(0)