摘要:
前言 现如今,不管是哪种类型的应用,评论区都少不了。从工具类的到媒体信息流类的,评论留言都是最基本的互动环节。比如抖音短视频下,针对视频每个用户都可以发表自己的观点;而针对用户的评论,其他的用户又可以对其进行评论,依次回复下去。 那么,一个视频的评论回复的表如何设计?功能如何实现呢?如标题,这里是 阅读全文
随笔分类 - php
基于Surprise协同过滤实现短视频推荐
2023-07-04 15:22 by 北桥苏, 223 阅读, 收藏, 编辑
摘要:
前言 前面一文介绍了通过基础的web项目结构实现简单的内容推荐,与其说那个是推荐不如说是一个排序算法。因为热度计算方式虽然解决了内容的时效质量动态化。但是相对用户而言,大家看到的都是几乎一致的内容(不一样也可能只是某时间里某视频的排前或靠后),没有做到个性化的千人千面。 尽管如此,基于内容的热度 阅读全文
关于项目初期,数据量小的内容推荐的实现方法
2023-06-27 14:20 by 北桥苏, 35 阅读, 收藏, 编辑
摘要:
前言 当下,只要是一个初具规模的内容应用都具备个性化推荐系统。比如购物类的会有推荐商品模块,搜索条下有个性化的搜索关键词或词条补全词,社交类的有博主推荐,视频或文章推荐等等。这些功能除了要有庞大的数据量,还要有健全的数据存储仓库建设方案,以及后面对数据的清洗,排序,训练后的推荐模型算法。 但是, 阅读全文
如何开发视频上传和播放功能时,既省钱又体验好?
2023-06-04 17:32 by 北桥苏, 178 阅读, 收藏, 编辑
摘要:
前言: 现如今,大部分带内容的网站或应用都有视频区了,不说是大厂平台,就连个人开发者也相继在自己网站或小程序上迭代出视频板块。那既然有了视频模块,除个性化推荐,智能审核等这种费钱又耗时的功能外(个人开发者暂缓)。最基本的视频上传,视频播放自然必不可少吧。 既然要强调省钱,我当前不会对接点播服务了。毕 阅读全文
关于对接芝麻 GO 的几点问题
2022-12-06 17:51 by 北桥苏, 646 阅读, 收藏, 编辑
摘要:
芝麻 GO 是支付宝给商家提供的一款助力商家进行拉新,促进下单的营销工具。对于用户是先享权益,后承诺任务,只需要签约一份协议就能开始一个任务。 阅读全文
如何不改动 GatewayWorker 依赖包下自定义协议
2022-10-29 13:48 by 北桥苏, 52 阅读, 收藏, 编辑
摘要:
前言: GatewayWorker 是 Workerman 的一个框架,对应用层开发者更友好。GatewayWorker 多了一个网关,也就是 Gateway,负责与客户端连接,消息转发等。而自定义的协议,也就是 gateway 面向客户端提供服务的协议,下面就简单收一下 GatewayWorker 阅读全文
workerman 自定义的协议如何解决粘包拆包
2022-10-26 14:16 by 北桥苏, 130 阅读, 收藏, 编辑
摘要:
前言: 由于最近在使用 workerman 实现 Unity3D 联机游戏的服务端,虽然也可以通过 TCP 协议直接通信,但是在实际测试的过程中发现了一些小问题。 比如双方的数据包都是字符串的方式吗,还有就因为是字符串就需要切割,而有时候在客户端或服务端接收时都会出现报错。经过打印日志发现,两端接收 阅读全文
unity3d 对接 workerman 实现联机游戏
2022-10-14 09:31 by 北桥苏, 208 阅读, 收藏, 编辑
摘要:
前言: Unity3D,相信很多人都知道是用来做游戏的。网上也有很多这类视频的教程,我也试着学习过。但是当要实现多人实时对战的教例比较少,而用 PHP 来做 Unity3d 的服务器端的就更少了。 我在网上看了一个作者用 C# 做联机服务器端的文章后,就根据他的思路改了一个 PHP 版的。例子只是多 阅读全文
ThinkPHP5.1 交互式命令
2022-09-23 20:46 by 北桥苏, 319 阅读, 收藏, 编辑
摘要:
前言: 在平时项目中,有时需要对某些业务进行批处理,比如为了版本兼容,或者不同系统的数据同步等场景下,我们会选择自定义一些指令定时或即时的执行。 但是有很多命令需要读表,随着定义的指令逐渐变多,模型里本不涉及业务性的方法也越积越多,甚至某些指令删除了,但是对应的模型方法还在。所以为了不影响业务代码, 阅读全文
SocketLog 的基本使用
2022-09-01 18:23 by 北桥苏, 72 阅读, 收藏, 编辑
摘要:
前言: 最近在封装一个日志类时,想借鉴一下 TP 的实现方式,特别注意了一下 TP 日志的驱动。平时常用文件形式记录日志却忽略了还有一个 Socket 方式,只需要连接一下远程服务,程序在单程运行中所打的日志就会出现在浏览器上。但是前提浏览器安装了扩展,接下来就浅谈一下 SocketLog 的简单使 阅读全文
如何在业务代码中使用 ThinkPHP5.1 封装的容器内反射方法
2022-07-05 19:50 by 北桥苏, 46 阅读, 收藏, 编辑
摘要:
invokeClass用法:可以不传命名空间实例化 (通过反射实例化)$obj = Container::getInstance()->invokeClass(InvokerTest::class);var_dump($obj->invokerNews());die; invokeMethod用法: 阅读全文
关于 PHP 启动 MongoDb 找不到指定模块问题
2022-06-14 14:58 by 北桥苏, 108 阅读, 收藏, 编辑
摘要:
前言: 最近有一个小 demo,需要通过 PHP 将用户行为记录储存到 MongoDB,再用 Spark 做协同过滤。由于以前处理跨语言交互是通过消息中间件,这次本地使用 MongoDB 却弄出了几个问题。首先是本地安装了扩展,启动时报找不到模块错误,再个时 PHP 进行的实例化使用时报 Mongo 阅读全文
我的网站中了马!
2022-05-18 15:34 by 北桥苏, 176 阅读, 收藏, 编辑
摘要:
前言: 其实我网站中马应该可以追朔到去年的八月份,当时好像是在 xx 平台有用户给我留言说网站上的游戏进不去了 (五子棋多人联机)。于是我打开一看发现首页被静态化了,为了快速能访问就重新提交了入口文件也没继续理会。 直到后来,隔一断时间就又有人留言说打不开,我才开始排查起因了。进入项目代码里,我发现 阅读全文
由Elasticsearch7.8评分脚本引起的一个索引迁移解决方法
2022-01-06 10:42 by 北桥苏, 61 阅读, 收藏, 编辑
摘要:
前言: 为了实践一下ElasticSearch的自定义相关度评分,使用了Expression脚本。但是在执行过程中却报错了,最后通过修改索引映射,添加别名和同步旧索引数据得以解决,所以以下也围绕这几项问题展开。 涉及知识: 索引映射修改 索引别名使用 重建索引 相关度评分 问题: 1. 评分脚本执行 阅读全文
Logstash同步MySQL关联表到Elasticsearch的嵌套文档中
2021-12-22 10:10 by 北桥苏, 228 阅读, 收藏, 编辑
摘要:
前言: 上一篇实践了通过Logstash同步MySQL的几张关联表到Elasticsearch中。为了实现同一种业务需求,嵌套文档在资源开销和查询速度上要优于父子文档(针对少量数据的情况)。所以以下就实践一下嵌套文档的基本使用和,以及Logstash如何同步一对多关系表到ElasticSearch的 阅读全文
Logstash同步MySQL一对多关联表到Elasticsearch父子文档
2021-12-20 20:07 by 北桥苏, 485 阅读, 收藏, 编辑
摘要:
前言: 目前大部分业务开发中,ElasticSearch主要还是用来做搜索。而支撑搜索功能的数据结构比较单一,不会有数据嵌套或者多种关联之类的。尽管没有,但是有些小众需求可能还会有一对多查询的场景。为了实现和MySQL的Join类似的查询方式,以下以ES的父子文档方式储存,并详细演示Logstash 阅读全文
Logstash如何批量同步MySQL多表到ElasticSearch
2021-12-08 09:51 by 北桥苏, 621 阅读, 收藏, 编辑
摘要:
前言: 上一篇文章也简单的介绍了Logstash同步MySQL到ElasticSearch。批量同步虽说就配置文件不一样,但是实际操作的时候,也还会遇到不少的问题,比如reader不允许特殊字符(0x0)等等。下面也主要以几个问题来演示批量同步的过程,以及启动命令时如何排查报错的方法。 批量同步配置 阅读全文
如何通过Logstash将MySQL数据同步到ElasticSearch
2021-12-06 09:21 by 北桥苏, 438 阅读, 收藏, 编辑
摘要:
前言: 最近又重新在看ElasticSearch的文档,发现那些DSL语法全都忘记了,所以准备写一个用ES做储存的demo小项目。其实是用DSL代替之前项目的SQL,但是数据以及一些字段还是需要,所以就需要将以前的MySQL数据导入到ElasticSearch中。 以前的做法是写一个脚本,通过创建索 阅读全文
ThinkPHP5.1如何在控制器中调用自定义命令
2021-12-01 13:13 by 北桥苏, 355 阅读, 收藏, 编辑
摘要:
前言: 业务项目开发过程中,如果是基于ThinkPHP框架,大部分自定义命令往往都是用于常驻内容执行一些任务,比如消费队列消息等。但是有时候,就是既想单独手动执行命令,又想在某个业务节点下触发命令。比如当项目需要迁移或者部署其他环境,所以这时候可以就需要在一些钩子或控制器中调用自定义命令了。下面就以 阅读全文
PHP实现的7组经纬度与距离的计算函数
2021-11-01 20:01 by 北桥苏, 391 阅读, 收藏, 编辑
摘要:
一. 根据当前位置计算四周的经纬度 /** * 根据当前位置计算四周的经纬度 * @param $lng * @param $lat * @param float $distance * @return array */ function returnSquarePoint($lng, $lat, 阅读全文