拥有0000-未整理-等待研究标签的文章

Go 实现依赖注入

为什么需要依赖注入作为一名软件开发人员,如果我们希望使代码保持清洁和可维护性,我们将代码分割成不同的层次。通常边界至少放置在基础设施和业务逻辑之间。当我们专门处理复杂的业务逻辑时,基础架构依赖于我们的业务逻辑是可取的,这样在更改基础架构时不会破坏我们的软件。开发一个新的软件项目时的第一个决定是否选择一个结构来实现分层。 大多数情况下,我选择简洁的架构,但您有另一个很好的选择,例如 D...
阅读全文

Go实践微服务 -- 服务发现

服务的注册发现对于微服务来说是一个非常重要的环节,在单一架构应用中,service 之间的互相调用,通过一个固定的 host 和 port 来发起 REST 或者 RPC 来调用,但是在微服务架构中,各个服务往往是动态变化的,所以需要一个服务发现机制来发送客户端的请求到动态的 service 实例中去。在利用 go micro 来实现服务发现便利很多,micro 中默认支持使用 )还支持 Et...
阅读全文

非Laravel项目中集成使用 illuminate/config

Larvae 的配置都在 config 目录下非常方便管理,可以通过`config()`帮助函数来实现对配置项目的设置和获取,同时用    来实现项目内环境变量的控制,非常强大和方便。我们在日常开发中如果没有使用 Laravel 框架,比如写一些脚本,或者自己写的项目框架,但是想集成这样的配置管理。这里就讲讲如何集成`illuminate/config` 到自己的项目中实现 Laravel 那种 ...
阅读全文

PHP实现Snowflake生成分布式唯一ID

Twitter 的 snowflake 在分布式生成唯一 UUID 应用还是蛮广泛的,基于 snowflake 的一些变种的算法网上也有不少。使用 snowflake 生成 UUID 很多都是在分布式场景下使用,我看了下网上有其中有几篇 PHP 实现的都没有考虑到线程安全。现在 PHP 有了 Swoole 的锁和协程的加持,对于我们开发线程安全和高并发模拟还是很方便的,这里用 PHP 结合 Swo...
阅读全文

剖析Laravel计划任务--创建和运行系统命令

译文 GitHub 原文链接 在启动计划任务的事件的时候,Laravel 的进度管理器在`Illuminate\Console\Scheduling\Event`对象上调用 `run()` 方法,表示该事件发生在 `Illuminate\Console\Scheduling\ScheduleRunCommand` 内。这个 `run()` 方法构建命令语法,并使用 Symfony Pr...
阅读全文

PHP实现队列的原理 - 宗炳煌 - 博客园

关于的队列的介绍,我这里就不多讲了,随便百度一下都很多用过laravel框架的童鞋都知道其自带队列功能,之前我很费解,PHP只是一个脚本,有超时机制为什么能不停的去执行队列呢?带着这个问题,在网上找了一下相关的介绍,这里我没有研究透laravel的队列,而且用这么高大上的实例来给大家讲,我估计自己都云里雾里所以我就其原理说明一下我们新建一个文件queue<?php whil...
阅读全文

(1) 使用 Swoole 来加速你的 Laravel 应用 | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

](https://iocaffcdn.phphub.org/uploads/images/201805/10/1/67O4dCaV0z.png?imageView2/2/w/1240/h/0) 是为 PHP 开发的生产级异步编程框架。 他是一个纯 C 开发的扩展, 他允许 PHP 开发者在 PHP 中写 高性能,可扩展的并发 TCP, UDP, Unix socket, HTTP, We...
阅读全文

使用 Swoole 来加速你的 Laravel 应用 - PHP / Laravel / 全栈 - CSDN博客

 是为 PHP 开发的生产级异步编程框架。 他是一个纯 C 开发的扩展, 他允许 PHP 开发者在 PHP 中写 高性能,可扩展的并发 TCP, UDP, Unix socket, HTTP, WebSocket 服务, 而不需要拥有太多的非阻塞 I/O 编程和低级别的 Linux 内核知识。 你可以把 Swoole 想象成 NodeJS, 但对于 PHP 来说将有更高性能。为什么要在 S...
阅读全文

filebeat和ELK全用了6.2.4了,kafka是1.1.0,filebeat写入kafka后,所有信息都保存在message字段中,怎么才能把message里面的字段都单独分离出来呢? - Elastic 中文社区

我用filebeat收集的是json格式的nginx日志,filebeat收集的信息用output:kafka到达kafka后是这样: ```{"@timestamp":"20180507T14:47:43.586Z","@metadata":{"beat":"filebeat","type":"doc","version":"6.2.4","topic":"elknginx"},"sou...
阅读全文

(1) Laravel 的日志系统 - monolog | Laravel China 社区 - 高品质的 Laravel 和 PHP 开发者社区

日志的重要程度不言而喻, 不管是在开发过程中, 还是部署到生产环境后, 都是经常使用的. 随着 `psr3` 的出现, 终于统一了 `php` 中日志的风格. 但是, 好用的记录日志系统, 也很重要. `monolog` 是我遇到的最好的日志系统. 而且, `laravel` 中也是用的 `monolog`.参考Using Monolog 安装 (Ins...
阅读全文