若将商业逻辑都写在 controller,会造成 controller 肥大而难以维护,基于SOLID原则,我们应该使用 Service 模式辅助 controller,将相关的商业逻辑封装在不同的 service,方便中大型专案的维护。

参考地址:https://oomusou.io/laravel/service/

Repository,Service,Presenter ,这时候 Model / Dao 只是数据库连接和关系映射,Repository 会辅助 Model 进一步封装,比如有 getPopularPosts() 之类,将注入到 Service 。Repository 处理数据库逻辑,Service 处理业务逻辑。Service 将注入到 Controller 层,Controller 层只处理 Http 相关逻辑,而视图相关由 Presenter 处理。
参考:https://learnku.com/laravel/t/7727/what-does-the-service-layer-in-mvc-mean

使用php hdfs 读取大文件

最近用hdfs上传了一个2.8g的视频,发现用原始的read方式会把整个视频加载到内存,会非常慢。所以使用hdfs的web api里面的按文件偏移量加载的方式。 参考:htt...

阅读全文

php获取字符串中的数字

$str = 'aasd222ssdd32'; $str = preg_replace("/[^0-9]/","",$str); echo $str;

阅读全文

Apache Hadoop Hdfs 集群安装(2台),并使用php操作hdfs上传、读取文件

Hadoop Java版本 https://cwiki.apache.org/confluence/display/HADOOP/Hadoop+Java+Versions Apache Hadoop 3.x现在仅支持Java 8 从2.7.x到2.x的Apache Had...

阅读全文

欢迎留言