自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Isaac-Zhang

做一个好人。

  • 博客(53)
  • 资源 (3)
  • 收藏
  • 关注

原创 [dubbo 源码之 ]1. 服务提供方如何发布服务

服务发布启动流程export`服务提供方在启动部署时,dubbo会调用ServiceConfig#export来激活服务发布流程,如下所示:Java API:// 1. 创建ServiceConfig实例 ServiceConfig<IGreetingService> serviceConfig = new ServiceConfig&lt...

2020-02-28 15:27:39 861

原创 spring boot 集成apollo 快速指南

目前市面上流行的三大配置中心框架:Spring CLoud Config 、Alibaba Nacos 以及携程apollo, 我们相应架构组号召,就使用Apollo吧。Work Flow简单解释:上图中有三套环境FAT、UAT和PROD,每一套环境都部署了2套Configservice 和 Adminservice.使用统一的Portal Server Cluster对所有环境进行...

2020-01-20 10:40:45 1592

原创 SEATA 1.0.0使用yaml配置替换file.conf 和 registry.conf

Client Configure for SEATA 1.0.0在SEATA 1.0.0 中发布了一个新的feature,可以使用yaml/properties来替换掉我们在之前引入的file.conf 和registry.conf. 只需2步即可达到目的:第一步,更改依赖 <!--seata--> <dependency> ...

2020-01-16 14:25:38 8401 4

原创 SEATA 分布式事务入门DEMO

Simple Extensible Autonomous Transacation Architecture,seata是简单的、可扩展、自主性高的分布式架构SEATA Server Configure因我们使用正式的1.0.0-GA 版本,网上大多数找到的说明都是0.X版本,有不少变动,比如,在server中取消了db_store.sql的脚本,如找不到相关内容,可以通过源码来查...

2020-01-15 18:19:38 1268

原创 从零开始安装Redis 集群(Linux CenOS7)

从零开始安装Redis 集群(Linux CenOS7)使用ISO安装CentOS7虚拟机配置静态IP(参考Mac VMware Fusion CentOS7配置静态IP)安装vim [root@localhost java]# rpm -qa|grep vim vim-minimal-7.4.629-6.el7.x86_64 [root@localhost java...

2020-01-06 10:37:09 876

原创 CentOS7中安装MariaDB

什么是mariaDB?在线安装(慢的要命)RPM离线安装(CentOS7.X)在线安装打开官方网站 https://mariadb.org/点击Download,跳转到下一页面继续点击Download,进到下页点击红框中的[链接] (https://downloads.mariadb.org/mariadb/repositories/#mirror=23Media)...

2019-11-29 09:37:14 980

原创 [springboot 开发单体web shop] 8. 商品详情&评价展示

上文回顾上节 我们实现了根据搜索关键词查询商品列表和根据商品分类查询,并且使用到了mybatis-pagehelper插件,讲解了如何使用插件来帮助我们快速实现分页数据查询。本文我们将继续开发商品详情页面和商品留言功能的开发。需求分析关于商品详情页,和往常一样,我们先来看一看jd的示例:从上面2张图,我们可以看出来,大体上需要展示给用户的信息。比如:商品图片,名称,价格,等等。在第二张图中,...

2019-11-25 10:55:06 777 2

原创 [springboot 开发单体web shop] 7. 多种形式提供商品列表

上文回顾上节 我们实现了仿jd的轮播广告以及商品分类的功能,并且讲解了不同的注入方式,本节我们将继续实现我们的电商主业务,商品信息的展示。需求分析首先,在我们开始本节编码之前,我们先来分析一下都有哪些地方会对商品进行展示,打开jd首页,鼠标下拉可以看到如下:可以看到,在大类型下查询了部分商品在首页进行展示(可以是最新的,也可以是网站推荐等等),然后点击任何一个分类,可以看到如下:我们一般...

2019-11-22 12:00:43 1053

原创 [springboot 开发单体web shop] 6. 商品分类和轮播广告展示

商品分类&轮播广告因最近又被困在了OSGI技术POC,更新进度有点慢,希望大家不要怪罪哦。上节 我们实现了登录之后前端的展示,如:接着,我们来实现左侧分类栏目的功能。## 商品分类ProductCategory从上图我们可以看出,商品的分类其实是有层级关系的,而且这种关系一般都是无限层级。在我们的实现中,为了效果的展示,我们仅仅是展示3级分类,在大多数的中小型电商系统中,三...

2019-11-18 18:49:14 1216

原创 [springboot 开发单体web shop] 5. 用户登录及首页展示

用户登录及前端展示用户登录在之前的文章中我们实现了用户注册和验证功能,接下来我们继续实现它的登录,以及登录成功之后要在页面上显示的信息。接下来,我们来编写代码。实现service在com.liferunner.service.IUserService接口中添加用户登录方法:public interface IUserService { ... /** *...

2019-11-11 21:41:35 980

原创 [springboot 开发单体web shop] 4. Swagger生成Javadoc

Swagger生成JavaDoc在日常的工作中,特别是现在前后端分离模式之下,接口的提供造成了我们前后端开发人员的沟通成本大量提升,因为沟通不到位,不及时而造成的[撕币]事件都成了日常工作。特别是很多的开发人员不擅长沟通,造成的结果就会让自己特别的痛苦,也让合作人员恨的牙根痒痒。为了结束战火蔓延,同时为了提升开发人员的满意度,Swagger应运而生。什么是SwaggerSwagger...

2019-11-08 10:24:36 1454

原创 [springboot 开发单体web shop] 3. 用户注册实现

[TOC]用户注册作为一个现代化电商平台,什么最重要呢?of course 是用户,广大用户群体是支持我们可持续发展的基石,顾客是上帝, 虽然在当今上帝已经不被重视了,特别是很多的平台对于老用户就是恨不得赶紧Out...但是用户量是一切的基础,那我们就开始创建我们的上帝吧!创建数据库---数据库的部分,我在这里就不多讲了,大家需要的话可以直接去传送门 抓取脚本expensive-shop...

2019-11-07 10:16:07 378

原创 [springboot 开发单体web shop] 2. Mybatis Generator 生成common mapper

Mybatis Generator tool在我们开启一个新项目的研发后,通常要编写很多的entity/pojo/dto/mapper/dao..., 大多研发兄弟们都会抱怨,为什么我要重复写CRUD? 我们为了避免编写一些不必要的重复代码,这节给大家介绍介绍使用一个开源工具,来帮助我们从这种简单枯燥的编码中解救出来。隆重有请: MyBatis通用Mapper4通用Mapper都可以极大的...

2019-11-06 10:11:08 1161

原创 [springboot 开发单体web shop] 1. 前言介绍和环境搭建

前言介绍和环境搭建简述springboot 本身是为了做服务化用的,我们为什么要反其道使用它来开发一份单体web应用呢?在我们现实的开发工作中,还有大量的业务系统使用的是单体应用,特别是对于中小型团队来说,在项目开发之初选择服务化开发是得不偿失的,因为对于此类团队,势必所有的工作都是需要我们开发人员来做的,例如:技术选型业务需求分析业务需求设计大量的测试运行部署运营健康监控....

2019-11-04 17:04:27 919

原创 [插件化开发] Poc之后,我选择放弃OSGI

Poc之后,我选择放弃OSGITIPS:如贵司允许重构老系统或者允许使用OSGI的第三方框架改造所带来的投入成本,并且评估之后ROI乐观,那么还是可以使用的。Runtime Version以下问题全部基于Equinox框架 & 使用BluePrint 整合Spring框架OSGIorg.eclipse.osgi 3.15.0v20190830-1434Equi...

2019-10-23 10:30:57 1462

原创 [插件化开发] 1. 初识OSGI

初识 OSGI背景当前product是以solution的方式进行售卖,但是随着公司业务规模的快速夸张,随之而来的是新客户的产品开发,老客户的产品维护,升级以及修改bug,团队的效能明显下降,为了解决此类问题,必须站在公司战略的统一高度来重构系统。荣幸的是,本人在此时加入团队并负责系统架构的升级与重构工作。因为公司在全世界都有客户,而且客户又来自于各行各业,带来的问题就是如何抽离公共业务的...

2019-10-15 14:59:30 1228

原创 Spring Cloud Gateway 之请求坑位[微服务IP不同请求会失败]

问题产生背景在使用Spring Cloud Gateway过程中,希望配置多Routes映射不同的微服务,因为Gateway 和Zuul的访问路径不同(zuul 会带有服务service Id),造成错误。现象表现问题定位认为是配置Predicate问题。 routes: - id: after_route uri: lb://us...

2019-09-26 16:31:54 2059

原创 大龄开发人员如何破局

本人性格已经很外向了,也是一个相对乐观派,可是依然陷入深深的焦虑中。为什么有这个想法说实话,在此次公司业务变动裁员(传送门)之前,从来没有想过情况会发展到这一步,一直以来都知道开发界有隐形的年龄歧视,从来没有想过这种问题会发生在自己身上,也许是工作的前10年一直都太顺利了,安逸的生活让自己产生了错觉。虽然在找工作的第一天就拿到了offer,可是与此而来的担忧反而更加严重了,躺在床上就在想,如果...

2019-08-28 11:06:17 567

原创 被辞退员工的一天

很抱歉各位看官,答应大家的Spring Cloud Alibaba系列文章要推迟了。。。 给大家添堵了。 昨天晚上,临下班之前,被老大叫进了会议室,然后,嗯。。。谈下一话题。 关于辞退看法 其实,公司在发展的过程中,总会遇到各种各样的问题,无论是管理方面,还是运营方面,如果一旦某一环节出现了问题,当然受伤的肯定是弱小的员工,特别是我们技术小伙伴是最容易被拿来开刀垫背。当遇到这样问...

2019-08-22 17:54:55 1093

原创 [Spring cloud 一步步实现广告系统] 22. 广告系统回顾总结

到目前为止,我们整个初级广告检索系统就初步开发完成了,我们来整体回顾一下我们的广告系统。整个广告系统编码结构如下: mscx-ad 父模块 主要是为了方便我们项目的统一管理 mscx-ad-db 这个模块主要有2个作用,本身只应该作为数据库脚本管理package来使用,但是我们在生成索引文件的过程中,为了方便,我就直接将导出全量索引的j...

2019-08-20 23:00:53 890

原创 [Spring cloud 一步步实现广告系统] 21. 系统错误汇总

广告系统学习过程中问题答疑博客园### [Eureka集群启动报错](https://www.cnblogs.com/zhangpan1244/p/11248030.html#4324235)Answer因为Eureka在集群启动过程中,会连接集群中其他的机器进行数据同步,在这个过程中,如果别的服务还没有启动完成,就会出现Connection refused: connect...

2019-08-19 20:23:34 298

原创 [Spring cloud 一步步实现广告系统] 20. 系统运行测试

系统运行 经过长时间的编码实现,我们的主体模块已经大致完成,因为之前我们都是零散的对各个微服务自行测试,接下来,我们需要将所有的服务模块进行联调测试,Let's do it. 清除测试数据&测试文件 我们在实现各个服务的过程中,添加了不少的测试文件和测试数据,为了不影响我们最终的展示效果,我们先将之前的历史数据清理掉。 drop database advertisemen...

2019-08-18 22:38:20 475

原创 [Spring cloud 一步步实现广告系统] 19. 监控Hystrix Dashboard

在之前的18次文章中,我们实现了广告系统的广告投放,广告检索业务功能,中间使用到了 服务发现Eureka,服务调用Feign,网关路由Zuul以及错误熔断Hystrix等Spring Cloud组件。简单调用关系: 但是系统往往都会报错,我们之前定义了一些容错类和方法,但是只是在控制台可以看到错误信息,我们想要统计一些数据,怎么才能更直观的看到我们的服务调用情况呢,接下来,和大家讨论一个新的...

2019-08-15 22:41:19 343

原创 Docker部署网站之后映射域名

Docker中部署tomcat相信大家也都知道,不知道的可以google 或者bing 一下。这里主要是为了记录在我们启动容器之后,tomcat需要直接定位到网站信息,而不是打开域名之后,还得加个blog后缀才能访问到我们的网站首页。 Docker exec -it [容器id] bash 进到/usr/local/tomcat/conf/ 修改 server.xml。 在我们安装完...

2019-08-14 20:58:33 3209

原创 [Spring cloud 一步步实现广告系统] 18. 查询返回广告创意

根据三个维度继续过滤 在上一节中我们实现了根据流量信息过滤的代码,但是我们的条件有可能是多条件一起传给我们的检索服务的,本节我们继续实现根据推广单元的三个维度条件的过滤。 在SearchImpl类中添加过滤方法 public class SearchImpl implements ISearch { @Override public SearchResponse fe...

2019-08-13 22:26:43 396

原创 [Spring cloud 一步步实现广告系统] 17. 根据流量类型查询广告

广告检索服务 功能介绍 媒体方(手机APP打开的展示广告,走在路上看到的大屏幕广告等等) 请求数据对象实现 从上图我们可以看出,在媒体方向我们的广告检索系统发起请求的时候,请求中会有很多的请求参数信息,他们分为了三个部分,我们来编码封装这几个参数对象信息以及我们请求本身的信息。Let's code. 创建广告检索请求接口 /** * ISea...

2019-08-12 22:25:24 837

原创 [Spring cloud 一步步实现广告系统] 16. 增量索引实现以及投送数据到MQ(kafka)

实现增量数据索引 上一节中,我们为实现增量索引的加载做了充足的准备,使用到mysql-binlog-connector-java 开源组件来实现MySQL 的binlog监听,关于binlog的相关知识,大家可以自行网络查阅。或者可以mailto:[email protected] 本节我们将根据binlog 的数据对象,来实现增量数据的处理,我们构建广告的增量数据,其实说白...

2019-08-10 22:15:11 351

原创 [Spring cloud 一步步实现广告系统] 15. Binlog 增量准备

MySQL Binlog简介 什么是binlog? 一个二进制日志,用来记录对数据发生或潜在发生更改的SQL语句,并以而进行的形式保存在磁盘中。 binlog 的作用? 最主要有3个用途: - 数据复制(主从同步) > Mysql 的Master-Slave协议,让Slave可以通过监听binlog实现数据复制,达到数据一致性目的 ...

2019-08-10 08:10:05 909

原创 [Spring cloud 一步步实现广告系统] 14. 全量索引代码实现

上一节我们实现了索引基本操作的类以及索引缓存工具类,本小节我们开始实现加载全量索引数据,在加载全量索引数据之前,我们需要先将数据库中的表数据导出到一份文件中。Let's code. 1.首先定义一个常量类,用来存储导出文件存储的目录和文件名称 因为我们导出的文件需要在搜索服务中使用到,因此,我们将文件名 & 目录以及导出对象的信息编写在mscx-ad-commom项目中。...

2019-08-08 22:45:36 825

原创 [Spring cloud 一步步实现广告系统] 13. 索引服务编码实现

上一节我们分析了广告索引的维护有2种,全量索引加载和增量索引维护。因为广告检索是广告系统中最为重要的环节,大家一定要认真理解我们索引设计的思路,接下来我们来编码实现索引维护功能。 我们来定义一个接口,来接收所有index的增删改查操作,接口定义一个范型,来接收2个参数,K代表我们索引的健值,V代表返回值。 /** * IIndexAware for 实现广告索引的增删改查 * * ...

2019-08-07 23:05:41 838

原创 [Spring cloud 一步步实现广告系统] 12. 广告索引介绍

索引设计介绍 在我们广告系统中,为了我们能更快的拿到我们想要的广告数据,我们需要对广告数据添加类似于数据库index一样的索引结构,分两大类:正向索引和倒排索引。 正向索引 通过唯一键/主键生成与对象的映射关系。 比如,我们从数据库中查询数据的时候,根据数据主键ID查询当前记录,其实就是一个正向索引的过程。 根据这个描述,很明显,我们的正向索引适用于推广...

2019-08-06 21:45:34 383

原创 [JVM 相关] Java 新型垃圾回收器(Garbage First,G1)

) HotSpot 垃圾收集器实现 Serial Collector(串型收集器) > 使用场景,大多数服务器是单核CPU。 > > 适用收集场景:1. 新生代收集(Young Generation Collection)2. 老年代收集(Old Generation Collection) Para...

2019-08-05 20:09:47 283

原创 [Spring cloud 一步步实现广告系统] 11. 使用Feign实现微服务调用

上一节我们使用了Ribbon(基于Http/Tcp)进行微服务的调用,Ribbon的调用比较简单,通过Ribbon组件对请求的服务进行拦截,通过Eureka Server 获取到服务实例的IP:Port,然后再去调用API。本节课我们使用更简单的方式来实现,使用声明式的Web服务客户端Feign,我们只需要使用Feign来声明接口,利用注解来进行配置就可以使用了,是不是很简单?实际工作中,我们也...

2019-08-04 23:07:30 305

原创 [Spring cloud 一步步实现广告系统] 10. 使用Ribbon 实现微服务调用

[Spring cloud 一步步实现广告系统] 10. 使用Ribbon 实现微服务调用

2019-07-31 21:23:07 874

原创 [Spring cloud 一步步实现广告系统] 9. 主类和配置文件

[Spring cloud 一步步实现广告系统] 9. 主类和配置文件

2019-07-30 21:56:03 846

原创 [Spring cloud 一步步实现广告系统] 8. 检索系统配置&依赖

[Spring cloud 一步步实现广告系统] 8. 检索系统配置&依赖

2019-07-30 21:37:13 829

原创 [Spring cloud 一步步实现广告系统] 7. 中期总结回顾

[Spring cloud 一步步实现广告系统] 7. 中期总结回顾

2019-07-29 23:23:30 843

原创 [Spring cloud 一步步实现广告系统] 6. Service实现&Zuul配置&Test

[Spring cloud 一步步实现广告系统] 6. Service实现&Zuul配置&Test

2019-07-29 19:51:05 886

原创 [Spring cloud 一步步实现广告系统] 5. 投放系统配置 启动 实体类

[Spring cloud 一步步实现广告系统] 5. 投放系统配置+启动+实体类

2019-07-28 20:00:32 892

原创 [Spring cloud 一步步实现广告系统] 4. 通用代码模块设计

[Spring cloud 一步步实现广告系统] 4. 通用代码模块设计

2019-07-27 20:22:39 889

盘古分词DLL文件

PanGu.dll PanGu.Lucene.Analyzer.dll

2012-07-13

lucene.net以及高亮的DLL文件

Lucene.Net.dll Highlighter.Net.dll

2012-07-13

[图像捕捉专家].snagit.V9.1.3(简体中文和英文版)

图像捕捉专家 snagit

2012-06-12

空空如也

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

TA关注的人

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