<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ethan的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/feijiing</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; feijiing]]></copyright><item><title><![CDATA[一站式分布式事物解决方案 seata]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/103166312</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/103166312</guid><author>feijiing</author><pubDate>Wed, 20 Nov 2019 16:50:28 +0800</pubDate><description><![CDATA[之前我们聊完了分布式框架spring cloud,今天我们来聊下由分布式应用带来的问题，分布式事物。

什么是分布式事物，这里摘录一段分布式事物定义：

提起分布式事务，最早指的涉及多个资源的数据库事务问题。

wiki对分布式事务的定义：

Adistributed transaction is a database transaction in which two or more ne...]]></description><category></category></item><item><title><![CDATA[springcloud 入门系列（十）springcloud config]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/100036727</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/100036727</guid><author>feijiing</author><pubDate>Fri, 23 Aug 2019 13:57:51 +0800</pubDate><description><![CDATA[最近比较忙有日子没有更新了，今天更新springcloud 系列最后一个组件，分布式配置中心-springcloud config.

什么是分布式配置中心，他主要提供分布式应用外部化配置进行统一配置管理的作用，比如百度disconf,以及阿里的Diamond等都是比较优秀的分布式配置中心。

springcloud config默认采用git来存储配置，也可以使用svn或者本地化...]]></description><category></category></item><item><title><![CDATA[springcloud 入门系列（九） zuul过滤器]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/100036705</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/100036705</guid><author>feijiing</author><pubDate>Fri, 23 Aug 2019 13:56:42 +0800</pubDate><description><![CDATA[昨天了解了zuul的API网关的搭建，以及路由的配置等知识，今天来了解zuul 的过滤器部分。

过滤器的功能是对外部访问，处理请求的过程进行干预，是实现外部请求访问统一入口的基础，他包含了对请求的校验，服务聚合等基础功能，实际在路由映射和请求转发都是由几个不同的过滤器完成的。下面我们先来看下过滤器的接口定义：


 abstract public String filterType();abs...]]></description><category></category></item><item><title><![CDATA[springloud 入门系列（八）springcloud zuul(api网关)]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/100036663</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/100036663</guid><author>feijiing</author><pubDate>Fri, 23 Aug 2019 13:54:34 +0800</pubDate><description><![CDATA[前面我们了解了springcloud 组件中的注册中心（eureka）,负载均衡（ribbon）,熔断器（hystrix）,声明式服务调用（feign）等组件，有了这些组件我们已经基本可以搭建分布式服务框架了,我们通常会搭建如下的服务架构（手动画的图比较粗糙）：



我们对外的服务会通过搭建一个openserver,一个RestFull 的api 给外部用户调用，并且通过F5或者nginx 进行...]]></description><category></category></item><item><title><![CDATA[springcloud 入门系列（七）-Feign(声明式服务调用)]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/100034385</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/100034385</guid><author>feijiing</author><pubDate>Fri, 23 Aug 2019 11:33:11 +0800</pubDate><description><![CDATA[​

前面我们学习了eureka 服务的搭建，以及ribbon，hystrx，分布式开发中很重要的两个功能组件，负载均衡和服务熔断机制来对我们的微服务进行保护。

前面我们在进行eureka 服务进行调用时都是采用RestTemplate 进行封装http服务调用，形成了一套模板的调用方法，实际应用当中，某个我服务提供的服务接口会被我们在多处调用，这时候我们往往会自己封装服务的调用客户端。而spr...]]></description><category></category></item><item><title><![CDATA[springcloud 入门系列（六）Hystrix-属性配置]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/100020836</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/100020836</guid><author>feijiing</author><pubDate>Thu, 22 Aug 2019 18:05:17 +0800</pubDate><description><![CDATA[昨天我们介绍了如何使用hystrix,并且对其有了初步的认识，今天我们进一步来了解hystrix.

下面是对hystrx 的设计目标和原则的一些描述，摘自网络：

https://www.cnblogs.com/cjsblog/p/9391819.html，也是hystrix在github 上的wiki翻译：

Hystrix被设计的目标是：

对通过第三方客户端库访问的依赖项（通常是通过网络）...]]></description><category></category></item><item><title><![CDATA[springcloud 入门系列（五）Hystrix-断路器]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/96167816</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/96167816</guid><author>feijiing</author><pubDate>Tue, 16 Jul 2019 18:53:27 +0800</pubDate><description><![CDATA[​在微服务架构中，我们不同的服务拆分在了不同的系统中，每个系统都运行在独立的进程中，服务之间通过远程调用进行跨进程通信，每个服务通通过服务注册中心形成了服务的订阅，注册，服务之间形成了依赖关系，当某个业务依赖的某个服务功能因为网络或者其他原因导致访问速度缓慢或者故障，会影响其他调用者服务的执行时长，从而导致整个服务慢慢的会形成阻塞，最终导致整个业务瘫痪的局面，因此我们需要一种机制来针对这些情况能够...]]></description><category></category></item><item><title><![CDATA[springcloud 入门系列（四）ribbon-自定义负载均衡实现]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/96167650</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/96167650</guid><author>feijiing</author><pubDate>Tue, 16 Jul 2019 18:52:27 +0800</pubDate><description><![CDATA[​

上篇文章我们介绍了springcloud 的负载均衡组件ribbon,对其有了基本的认识。上篇我们留了个小任务，自定义负载均衡策略，话不多说，我们直接上代码：









配置自定义负载均衡bean。交由spring容器管理：


@Configuration
public class RibbonConfiguation {

    @Bean
    public IRule...]]></description><category></category></item><item><title><![CDATA[springcloud 入门系列（三）ribbon-负载均衡]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/95195530</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/95195530</guid><author>feijiing</author><pubDate>Tue, 09 Jul 2019 14:47:35 +0800</pubDate><description><![CDATA[​

上篇文章我们了解了springcloud 的的服务如何进行注册以及服务的调用，也就是eureka.

在实际生产环境中，我们为了保障服务的高可用，以及稳定都各种因素的考量，基本都会多实例部署。那么我们的eureka 的客户端如何来选择合适的服务提供者来进行服务调用呢，这里我们就需依赖负载均衡技术来解决。常规的负载均衡有硬件负载以及软负载，硬件负载主要是通过在服务节点之间安装专门用于负载均衡的...]]></description><category></category></item><item><title><![CDATA[springcloud 入门系列（二）-eureka服务调用]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/95195449</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/95195449</guid><author>feijiing</author><pubDate>Tue, 09 Jul 2019 14:46:31 +0800</pubDate><description><![CDATA[​

上篇文章我们了解了如何搭建springcloud 高可用注册中心（eureka注册中心高可用），本篇我们来了解，如何进行服务的调用。



首先，我们先来创建我们的服务提供者：

pom依赖：





&lt;dependency&gt;
&lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
&lt;artifactId&gt;...]]></description><category></category></item><item><title><![CDATA[springcloud 入门系列（一） 高可用注册中心-eureka]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/95195322</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/95195322</guid><author>feijiing</author><pubDate>Tue, 09 Jul 2019 14:45:49 +0800</pubDate><description><![CDATA[​

最近公司小组内部做springcloud主题分享，后续这边会同步更新springcloud 系列分享，这个系列的主旨是带大家入门springcloud,当然会穿插一些自己踩的坑做单独讲解。本系列主题默认大家已经熟知springboot.

下面简单介绍下什么是springcloud：“Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具（例如...]]></description><category></category></item><item><title><![CDATA[优化 springboot maven 固化依赖关系]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/95195193</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/95195193</guid><author>feijiing</author><pubDate>Tue, 09 Jul 2019 14:44:46 +0800</pubDate><description><![CDATA[​

我们通过ideal 或者 spring 提供的 spring 提供的官方构建工具构建 springboot 项目时，会默认的给我们生产maven 的parent 如下图：


&lt;parent&gt;
    &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
    &lt;artifactId&gt;spring-boot-...]]></description><category></category></item><item><title><![CDATA[springmvc 默认json解析实现 jackson 踩坑实录]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/95194886</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/95194886</guid><author>feijiing</author><pubDate>Tue, 09 Jul 2019 14:43:03 +0800</pubDate><description><![CDATA[​

最近在优化修改某个项目代码时碰到一个问题，某个接口采用json 方式进行前后端数据交互，原始代码时用一个字符串接受json，然后手动通过fastjson 转换成对应的javabean，其实这个参数解析工作完全可以交给spring框架去执行，无需手动解析，你只需定义对应的javaBean，@RequestBody 这个注解就可以轻松实现 json 数据的自动解析和绑定功能。

...]]></description><category></category></item><item><title><![CDATA[spring @Condition  多注解之间执行逻辑与还是或]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/77053909</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/77053909</guid><author>feijiing</author><pubDate>Thu, 10 Aug 2017 15:49:20 +0800</pubDate><description><![CDATA[最近在学习spring 源码，看到条件注解，有个疑问，就是在我使用多个条件注解时，他们之间是逻辑与还是或的关系，为此，做了个小实验。首先自定义两个condition 的实现/** 
 * Created by daifei on 2017/8/10. 
 */ 
public class MyConditionA implements Condition {@Override
public bool]]></description><category></category></item><item><title><![CDATA[solr 增量同步问题]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/72439394</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/72439394</guid><author>feijiing</author><pubDate>Wed, 17 May 2017 20:42:19 +0800</pubDate><description><![CDATA[今天做solr同步时遇到问题，发现数据值同步了部分字段，先来看下配置增量导入的sql配置： 
 
         
                <entity name="course"  
        query="SELECT id,name,picture,description,type,price,hard,update_statue,introduce,original_cos]]></description><category></category></item><item><title><![CDATA[solr 嵌套entity 高亮查询]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/71669194</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/71669194</guid><author>feijiing</author><pubDate>Thu, 11 May 2017 18:51:26 +0800</pubDate><description><![CDATA[最近要做搜索功能，研究solr 嵌套entity时，遇到一些问题，现在做些总结。 
有这么个需求，搜索课程，同时如果课程下的课时数据符合查询条件也需要吧课时数据展现出来，如下图效果： 
可以看到，课程和课时是一对多关系，所以我做了嵌套的配置：配置代码如下：   <document>        <entity name="course"  
        query="SELECT id,nam]]></description><category></category></item><item><title><![CDATA[linux 环境搭建solr5.5.4搜索服务]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/71482139</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/71482139</guid><author>feijiing</author><pubDate>Tue, 09 May 2017 17:25:36 +0800</pubDate><description><![CDATA[最近公司网站要做全文搜索，打算使用solr做索引搜索引擎。开始在windows 环境搭建没遇到什么问题，在linux 搭建碰到了一些问题，特在此做下记录备忘，也给其他朋友做个参考。
安装前提，安装jdk，网上有很多资料就不累述，另外网上很多资料都是自己安装tomcat服务器，然后拷贝solr至相关目录启动，我觉得这个太繁琐，所以自己摸索了solr自带jetty方式的安装部署，而且比tomcat那]]></description><category></category></item><item><title><![CDATA[mybatis 嵌套查询，一对多]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/50524345</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/50524345</guid><author>feijiing</author><pubDate>Fri, 15 Jan 2016 16:20:11 +0800</pubDate><description><![CDATA[最近在做项目时，需要用到mybaits 嵌套查询，什么意思呢，比如个人信息，中包含复杂对象地址，并且是一对多，我想一次查询出来，
这个之前写过，但语法老师忘记，今天写个博客，记录下，好记性不如烂笔头，先简单写一版本，晚上继续润色下。
一下是sqlmap 内容，这里做下解释：
property="subChapter" column="{id=id,COURSE_ID=COURSE_ID}"]]></description><category></category></item><item><title><![CDATA[openldap windows 下的安装与调试]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/17560003</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/17560003</guid><author>feijiing</author><pubDate>Wed, 25 Dec 2013 18:33:40 +0800</pubDate><description><![CDATA[参考：http://www.micmiu.com/enterprise-app/sso/openldap-windows-config/
说明：网上找了好多资料，发现在导入数据时 使用命令 
ldapadd 报错，这个折腾了我好久,这篇是我找到的最详细的文章：




！！！有网友说：按照我上面的命令，提示：’ldapadd’ 不是内部或外部命令，也不是可运行的程序或批处理文件。经过]]></description><category></category></item><item><title><![CDATA[Flash安全沙箱和跨域文件]]></title><link>https://blog.youkuaiyun.com/feijiing/article/details/8875454</link><guid>https://blog.youkuaiyun.com/feijiing/article/details/8875454</guid><author>feijiing</author><pubDate>Thu, 02 May 2013 13:01:09 +0800</pubDate><description><![CDATA[Flash安全沙箱和跨域文件




1.1 简述flash的安全沙箱 
1.Flash有四种基本的沙箱类型：
Remote: swf来自网络，遵守域的沙箱规则，不能读取不同域中的资源，除非有设置。
Local with file ：swf是本地文件，可以读取本地数据，但不能与网络通信。
Local with network：swf是本地文件，可以与网络通信，但不可以读取本地数据]]></description><category></category></item></channel></rss>