暂时未有相关云产品技术能力~
【公众号:贝可林】 记得带花米过来哈,有酒有故事~
AI狂潮下企业的机遇和挑战
chatgpt掀起AI狂潮
从UML类图关系到依赖注入(IoC)
在写这篇文章之前,最想提醒大家的是,开发一定不能想当然,看着没问题就不调试了,结果它就是有问题的。如果时间很紧,到了测试阶段才发现问题解决问题那就很狼狈很被动了,不要问我为什么会特别想提这个。
PHP写微服务之Hyperf
事情是这样的,因为小马本次要写一个go项目。但是因为一些权限问题,一些依赖包在内网小马获取不到,于是只能求助大大。大大给的策略就是他先把所有的依赖包go mod,然后go mod vendor迁移到项目目录vendor下进行本地依赖载入即可,也就是使用 go build -mod=vendor来编译即可。一切似乎看起来还是那么完美。然后正要起飞,直接翻车,现场如下。【这里插播一条发现,就是使用golang IDE go build 和使用命令行go build 的区别在于前者不会生成.exe文件】
本文为go mod 简单搭建grpc服务demo实践。也记录了其中的一些官方未交待的坑。
啊,这....小马曾经也很好奇这是个什么玩意,后面写GO的时候因为要自己实现DB层和redis层,才对它有了更进一步深入的了解。但要是正儿八经地说呢,也不知道该怎么描述。还是借助网络上各路大神的文章来抛玉引我这个砖吧。
composer遇到SSL3_GET_SERVER_CERTIFICATE
提高游戏开发效率之配置表生成工具
使用saga管理事务
小马也是无意中心血来潮,想着PHP能不能也写个类似计算器一样的桌面应用。比如,桌面有个“计算器.exe”,点开后就是计算器界面,重要的是这个玩意是用PHP写的,对,你没看错,就是PHP。
envoy代理转发与L5 Cluster 负载均衡
PHP CURL指定host内网通信
一文理解哈希冲突四种解决方法
老板深夜打电话给我,“赶紧看下,网站SSL证书要过期了”
SwitchHosts 频繁切换host的救星
以下是小马整理总结的入门理解笔记,助于入门和理解分布式链路追踪,opentracing(开放分布式追踪) + jaeger。
有了二叉树,平衡二叉树为什么还需要红黑树
编程语言中的堆栈和垃圾回收
分布式唯一ID生成方案
git理解之超薄笔记
小马经常看到招聘要求中会写着一个词:JWT。没接触过的同学可能一愣,这是啥高级玩意?看起来很唬人的样子,不能查,一查就是个token生成方式。好,那就来了解一下吧。
谈起RESTFUL大家未免都耳熟能详,但是要介绍一下它是什么,可能就是停留在听过或者见过的阶段了。一贯喜欢以通俗的语言来消化知识的小马自然不会放过它了,就让我们来以唠嗑的方式浅谈一下助于理解。
swoole有协程,Go也有。我们知道与PHP相比,使用swoole和Go除了进程模型不一样,其主要的协程特性是关键。那么该如何使用协程呢?下面就来一起探讨下。
谈起小程序开发,想必大家都不会陌生了。众所周知,小程序开发的官方文档是要求开发者需要自行维护登录态的。那么小程序服务端开发的登录态维护大家是如何做的呢?本文适用微信和QQ小程序的自定义登录态维护。
小马曾经有讲过PHP函数mb_detect_encoding误判带来的坑,今天再来讲讲这个函数的惊天秘密。你准备好了吗?
urldecode()解码引发注入其实也没那么可怕
编程之你不知道的坑,足以致命!
上次为了vue.js实现web app看的nodejs,首先感谢上次各位大神对nodejs初识不足的指点。本次烟纠了个小小的Demo,来总结和提疑。
扛着锄头写代码之nodejs初识
小马无意中发现一个比较清晰的TCP滑动窗口视频教程,总结后在此分享,图文结合,一分钟即可秒懂窗口滑动原理,再也不怕面试官吓唬你了。视频源地址点这里,感谢原作者分享。
PHP程序员必须知道的5个潜规则
你知道独生子女用编程怎么表示吗?单例模式了解一下
本文小马参考部分文章,对分布式事务自己做了一下消化和总结整理。
背景是这样的,小马在window上的SVN客户端不能连接服务端,但同事的是可以的。很久没用svn了,于是小马想用SVN命令行来试一下是SVN客户端版本的问题还是SVN账号的问题。于是得知window上可以安装WSL后直接使用Linux命令敲SVn命令。于是就有了下面的操作。
记得小马最早期刚参加工作的时候全文索引用的是Sphinx。 当一个功能需要对表中的text varchar等文本进行like查询时,MySQL全表扫描很慢,需要Sphinx。Sphinx能解决性能和中文分词问题。
Linux的用户体系与权限
Shell script + crontab实现Mysql定时备份
对于存储过程一般会被不建议使用,因为其隐藏了业务逻辑的同时也给开发人员阅读逻辑代码对代码逻辑的理解不透明。当然,存在即是合理的,它的高效也是值得青睐的。小马小玩了一下,作为入门的敲门砖。
MySQL主从复制原理和配置实现
简单点,说话的方式简单点。萦绕耳畔的是这首歌,那就简单点吧,来浅谈一下ZooKeeper的理解。小马仍然努力寻求以最通俗的语言来一起入门理解下这个分布式利器。
说到MySQL事务,大家更多就是知道增删改查。以及事务就是开启事务,提交或者回滚事务,其他的一概模糊,可能大家更多的是停留在应用层面。说到MySQL的事务隔离级别,小马特意翻阅了一些网上教程,诸如菜鸟教程,发现并无相关的介绍。还是整理一下吧,毕竟一般也是面试时候的必考题。
Redis原生就支持集群,最近都在关注Redis,今天小马就来浅谈一下三种集群模式的理解,便于日后实战。
又是Redis这个家伙,到底还有什么是Redis不能做的。没错,就是它,今天小马来聊聊Redis geo这个数据结构在LBS上的运用。现在都是线上线下的模式了,出现了很多业务基于LBS,即基于位置的服务(Location Based Services,LBS)。比如附近的商家,附近的骑手,微信摇一摇,附近的滴滴类似于的距离计算等等。那要怎么实现呢?
我们前面介绍了Redis这个万金油,然后事情还没有完。Redis不仅能布隆过滤器还能做基数统计。好了,小马又要开始探讨一方了。
之前,小马在聊缓存击穿和穿透的文中有介绍过防止缓存穿透其中的一种方式是使用布隆过滤器,那什么是布隆过滤器呢?今天就来喝喝茶以通俗的方式聊一聊,一起学习学习。
如果数据库查询压力过大怎么办?当然是上缓存了。似乎缓存就是为了缓解数据库压力而生,那就这样完了吗?自然不是,可曾遇到过面试Redis的时候经常被问什么是缓存穿透,缓存击穿,这两者有什么区别?啊,真是头大,一字之差。今天小马就来一起探讨下这一块呀。
上一篇文章我们一起探讨了MySQL优化的存储引擎选择,配置参数优化,索引优化等,今天小马就继续接下来的篇幅,来唠嗑一下MySQL优化剩下的一些招式。
说起MySQL优化大家并不会陌生了,也是平常面试中老生常谈的内容了。小马今天来做个大盘点,鉴于涉及的内容会比较多,考虑先整体概述,后续再开篇幅局部展开。