<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Emily Blog]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/cuishuli</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; cuishuli]]></copyright><item><title><![CDATA[服务类型（RPC、SOAP、REST）]]></title><link>https://blog.youkuaiyun.com/cuishuli/article/details/53128982</link><guid>https://blog.youkuaiyun.com/cuishuli/article/details/53128982</guid><author>cuishuli</author><pubDate>Fri, 11 Nov 2016 15:07:19 +0800</pubDate><description><![CDATA[RPC 是Remote ProcedureCall（远程调用过程）的缩写。我们可以这么说，RPC服务就是调用函数并传入参数的地方。你将看到描述为XML-RPC或JSON_RPC的服务，并了解它们使用怎样的数据格式。


SOAP 曾经表示简单对象访问协议（Simple Object Access Protocol），但由于SOAP绝不简单，因此它的使用率已经下降。然而，SOAP是严格定义的X]]></description><category></category></item><item><title><![CDATA[关于输出缓冲ob_start()的作用]]></title><link>https://blog.youkuaiyun.com/cuishuli/article/details/53128552</link><guid>https://blog.youkuaiyun.com/cuishuli/article/details/53128552</guid><author>cuishuli</author><pubDate>Fri, 11 Nov 2016 14:34:37 +0800</pubDate><description><![CDATA[在你的PHP脚本中可以使用ob_start()来启动输出缓冲，或用php.ini设置output_buffering为默认打开，启用输出缓冲会导致PHP开始存储你输出的脚本而不是立即将它们发送到客户端。当脚本结束或者你调用了ob_flush()函数，PHP才会将内容发送到客户端。
如果你打开了输出缓冲并开始发送输出，紧接着你会发送一个文件头，当缓冲区被清空的时候，文件头会在正文内容之前发送到客户端。这可以让我们避免代码输出咸鱼文件头发送的问题。]]></description><category></category></item><item><title><![CDATA[面向服务的架构（SOA）]]></title><link>https://blog.youkuaiyun.com/cuishuli/article/details/53126377</link><guid>https://blog.youkuaiyun.com/cuishuli/article/details/53126377</guid><author>cuishuli</author><pubDate>Fri, 11 Nov 2016 10:29:38 +0800</pubDate><description><![CDATA[SOA(Service-Oriented Architecture, 面向服务的架构)，它是基于一个服务层的系统，提供系统需要的所有功能，但这个服务提供的是应用层，并未连接到变现层。这样，多种系统就可以使用这个相同模块化、可重复使用的功能了。]]></description><category></category></item><item><title><![CDATA[关于回调callback的多种形式]]></title><link>https://blog.youkuaiyun.com/cuishuli/article/details/53116873</link><guid>https://blog.youkuaiyun.com/cuishuli/article/details/53116873</guid><author>cuishuli</author><pubDate>Thu, 10 Nov 2016 16:19:15 +0800</pubDate><description><![CDATA[关于回调callback的多种形式]]></description><category></category></item><item><title><![CDATA[PHP的对象和引用（写时复制）]]></title><link>https://blog.youkuaiyun.com/cuishuli/article/details/53115823</link><guid>https://blog.youkuaiyun.com/cuishuli/article/details/53115823</guid><author>cuishuli</author><pubDate>Thu, 10 Nov 2016 15:00:40 +0800</pubDate><description><![CDATA[对象总是通过引用传递。对象会提供一个指向自己的引用，而不是复制自己的一个副本。这意味着如果一个函数对传入的一个对象进行操作时，没有必要从函数中返回。这种变化会在对象的原始副本上反映出来。
如果需要为一个已经存在的对象复制一个单独的副本，可以使用clone这个关键字来创建。]]></description><category></category></item><item><title><![CDATA[对laravel5概念的理解 -- 资源库模式(Repository)]]></title><link>https://blog.youkuaiyun.com/cuishuli/article/details/51859988</link><guid>https://blog.youkuaiyun.com/cuishuli/article/details/51859988</guid><author>cuishuli</author><pubDate>Fri, 08 Jul 2016 12:38:13 +0800</pubDate><description><![CDATA[Repository就是个仓库管理员，仓库里面有redis数据库，mongodb数据库，mysql数据库等等。领域层无需关心这些数据库各自的类文件放哪里，只需要告诉Repository需要哪一个，由Repository拿出来给领域层。可以看到，好处就是领域层可以方便地切换数据库，理论上只要改一处配置，无需改太多代码。



来个例子：http://laravelacademy.org/po]]></description><category></category></item><item><title><![CDATA[数据库并发下的脏数据问题]]></title><link>https://blog.youkuaiyun.com/cuishuli/article/details/51857541</link><guid>https://blog.youkuaiyun.com/cuishuli/article/details/51857541</guid><author>cuishuli</author><pubDate>Fri, 08 Jul 2016 02:03:48 +0800</pubDate><description><![CDATA[事情是这样的，我有个需求，简单来说是每次insert三条记录，每次都给本次insert的记录version+1，理想情况下，假设没有并发，最后的数据应该是这样
id    name        version
1     name           1
2     name           1
3     name           1
4     name]]></description><category></category></item><item><title><![CDATA[mysql如何处理auto_increment]]></title><link>https://blog.youkuaiyun.com/cuishuli/article/details/51857466</link><guid>https://blog.youkuaiyun.com/cuishuli/article/details/51857466</guid><author>cuishuli</author><pubDate>Fri, 08 Jul 2016 01:08:36 +0800</pubDate><description><![CDATA[官网原文在这里，
http://dev.mysql.com/doc/refman/5.6/en/innodb-auto-increment-handling.html


重点就这段，因为它是默认使用的锁模式：


innodb_autoinc_lock_mode = 1 (“consecutive” lock mode)
This is the default lock mode]]></description><category></category></item><item><title><![CDATA[对laravel5概念的理解 -- 观察者模式(Event)]]></title><link>https://blog.youkuaiyun.com/cuishuli/article/details/51853546</link><guid>https://blog.youkuaiyun.com/cuishuli/article/details/51853546</guid><author>cuishuli</author><pubDate>Thu, 07 Jul 2016 18:52:37 +0800</pubDate><description><![CDATA[官方给的tutorial完全把我搞混了，command bus queue的例子中使用了event事件，而event事件中又有事件队列。然后小白搞不懂两者区别了，最后结论么，两者根本没关系。
event事件其实就是观察者模式的实现，简单来说先定义一个事件，然后定义1个或多个监听器来监听这个事件，一旦事件发生，监听器都会做出相应的逻辑处理。]]></description><category></category></item><item><title><![CDATA[对laravel5概念的理解 -- 门面模式(Facade)]]></title><link>https://blog.youkuaiyun.com/cuishuli/article/details/51852983</link><guid>https://blog.youkuaiyun.com/cuishuli/article/details/51852983</guid><author>cuishuli</author><pubDate>Thu, 07 Jul 2016 17:26:44 +0800</pubDate><description><![CDATA[前言：


第一次写技术类博客，因为比较懒，至于作为一个懒人为何会写博客，因为记性比较差，常常当初灵光一闪理解的概念最后会忘记。所以还是用文字记录下来，以备自己后查，有缘人看到也可以做个参考，不同意见欢迎指正。不过主要问题是，我表达能力不好，有缘人还得看得懂，恩，必须是有缘人中的有缘人。
为什么写laravel呢，这框架真心牛逼，组件化的优势不提，我主要是用它来学习下PHP设计模式的应用。]]></description><category></category></item></channel></rss>