应用
文章平均质量分 65
飞鸟真人
这个作者很懒,什么都没留下…
展开
-
使用supportFragmentManager管理多个fragment切换
如果我们使用一个activity来创建程序,来用占位符管理多个fragment切换,这里水一篇最简单直接的做法。原创 2024-06-26 15:22:32 · 1179 阅读 · 0 评论 -
BirdTalk IM集群中消息流转策略讨论
目前群聊的存储策略是1写多读方案;每个群组一个队列,按时间顺序排列,不区分用户;私聊的存储是写扩散的,每个人都有自己的消息队列,按时间顺序 保存所有的消息,不区分会话;原创 2024-06-21 07:51:53 · 719 阅读 · 0 评论 -
使用 MobileNet和ImageHash做图片相似度匹配(以图搜图)
使用MobileNet 和图片哈希提取图片特征值比对相似相;MobileNet还可以用于图片分类;原创 2024-06-02 10:45:49 · 1432 阅读 · 0 评论 -
Drafty-基于JSON的标记语言来描述聊天内容(代码解释)
函数执行格式化,因为GO格式化后的内容,毕竟不是在android 和 ios 中可以显示的控件中使用,所以和其他版本的格式化不太一样;通过这些类,开发者可以对文本的不同部分应用特定的样式和属性,从而实现类似的效果。使用上述的结构解析之后,fmt也可以转为对应的span,这些span 是一个一个罗列的小片段,这个函数简单的总结就是一个递归函数,对其中的文本进行格式化处理,不过GO确实没有啥可处理的。那么这里的span 不仅仅是并列的关系,而且还是一个树状的关系,这里。中对文本的某些部分应用特定的样式或行为。原创 2024-05-30 15:01:24 · 953 阅读 · 0 评论 -
Drafty-基于JSON的标记语言来描述聊天内容
这份文档介绍了 Drafty,一种由 Tinode 使用的文本格式,用于为消息添加样式。Drafty 的目标是在表达能力足够的同时,不会开放太多的可能性以避免安全问题。你可以将它视为将 JSON 封装了一下的。Drafty 受到了 Facebook 的规范的影响。截至撰写本文时,已经存在和的实现。还有一个,可以将 Drafty 转换为纯文本和预览。这样的好处就是在机器人交互时候可以发送一些格式化的文本,而不仅仅是微信和QQ那种无格式文本;原创 2024-05-29 14:16:29 · 1088 阅读 · 0 评论 -
使用go_concurrent_map 管理 并发更新缓存
在后台服务中,为了提速,我在内存还做了一个告诉缓存来管理用户信息,根据更新通知,或者定时去redis中同步信息,那么在加载或者更新某个用户元素时,要防止并发,这个类在插入时候,可以检测是否存在,并通过回调函数来决定是插入还是更新;这个加锁已经放在插入函数中完成了;2)去数据库或者redis加载;这里就有个并发重复的可能性;1)如果内存缓存没有;3)添加到内存缓存;原创 2024-04-19 09:01:12 · 356 阅读 · 0 评论 -
浏览器内使用JS和椭圆曲线密钥交换
与之相比,通常使用的其他导出类型包括 "spki"(SubjectPublicKeyInfo)和 "pkcs8"(Private-Key Information Syntax Standard #8)。"spki" 用于导出公钥,"pkcs8" 用于导出私钥。:导出的是 Private-Key Information Syntax Standard #8 结构,包含了私钥的算法标识和私钥本身。备注:公钥可以导出,私钥不允许导出,所以只能生成秘钥之后,保存共享密钥,用指纹来标记;原创 2024-04-16 16:25:40 · 265 阅读 · 0 评论 -
消息存储与同步策略设计
优点:以用户为中心比以会话为中心(tinode)的好处就是消息管理更加容易;每个用户的数据相对集中,可以快速的找到并一次性同步给客户;缺点:数据需要存储2份;优点:群聊使用读扩散,存储数据量少;缺点:读扩散,如果用户反复离线与上线,需要读取离线数据,对scylladb压力比较大;原创 2024-04-02 22:15:24 · 879 阅读 · 0 评论 -
用go实现一个任务调度类 (泛型)
实现了一个简单的任务管理系统,允许用户定义任务和工作者,并将任务分配给工作者进行处理。这个系统旨在提供一个灵活的任务管理框架,可以根据需要动态地添加和移除工作者,以及处理任务。原创 2024-03-24 15:25:41 · 622 阅读 · 0 评论 -
椭圆曲线密钥交换 (Elliptic Curve Diffie-Hellman, ECDH)代替DH秘钥交换
椭圆曲线加密(Elliptic Curve Cryptography,ECC)和迪菲-赫尔曼密钥交换(Diffie-Hellman Key Exchange,DH)都是现代密码学中常用的技术,它们可以用于安全地交换密钥和加密通信。原创 2024-03-23 14:01:14 · 1374 阅读 · 0 评论 -
BirdTalk即时通信协议设计
打算做一个免费、开源、安全的通信服务,便于二次开发使用的。原创 2024-03-19 10:35:04 · 766 阅读 · 0 评论 -
IM服务集群与跨服务器消息路由策略
在单机模式下,相对简单,认为所有的客户都在同一台服务器上,姑且认为1台服务器可以同时支持1万用户在线,在更多用户同时在线时,则需要集群来实现负载均衡。集群的算法需要解决故障处理以及动态添加的问题,同时需要考虑如何在集群节点间路由数据。原创 2024-03-18 14:39:56 · 1389 阅读 · 0 评论 -
使用travelbook架设自己的实时位置共享服务
travelbook 是一款开源的安卓APP,它能以低功耗提供实时位置共享,它包含功能如下:好友之间分享实时位置;记录行程轨迹;标记收藏地点;对比目前市场的一些实时位置共享软件,这款软件APP和后端服务都是开源的,完全可以自己架设私有服务器,家人或者团队使用,避免了烦人的广告,也可以避免隐私扩展问题,同时也不必担心非法信息采集的问题。原创 2023-12-24 21:54:35 · 849 阅读 · 1 评论 -
编写http workshop脚本从网页缓存里解析音乐
通过解析一个网页展示如何使用内置的LibXml2的功能解析HTML,提取我们关心的内容。原创 2023-03-06 12:14:08 · 527 阅读 · 0 评论 -
c++封装libxml2解析网页
有页面不符合XML规范,节点没有闭合,造成XPATH搜不到任何东西,主要是解析树时候名字丢失了,但是通过自己手写深度递归查找还是可以的,原创 2023-03-03 10:14:58 · 227 阅读 · 0 评论 -
使用开源httpworkshop执行http api测试与资源下载
httpworkshop集成了lua脚本引擎,可以通过脚本复用以及扩展DLL方式支持更多的功能;可以方便的实现http api测试以及资源分析下载。原创 2023-03-01 13:03:37 · 261 阅读 · 0 评论 -
关于联想Y7000P睡眠后无法唤醒问题修复
安装程序执行后,自动重启,开始自动更新,发现之前是45WW,目前是49WW。这个新的机器是WINDOWS11的,症状了自己睡眠后就醒不过来了,于是找了在线客服,客服问是否是在禁用触摸板情况下无法唤醒,我试试发现果然是,不禁用可以唤醒,禁用了就行了,只能重启;于是,我试了一下,果然更新时候发现之前的版本比较旧,于是我找到了公众号,提示下载一个软件修复驱动,页面有相关的说明,以及新版本BIOS的版本是。再然后就自动重启进入windows11了,此时测试发现,已经可以正常唤醒计算机了。原创 2023-02-21 13:05:21 · 3906 阅读 · 1 评论 -
使用Scintilla编写语法高亮文本编辑器
使用Scintilla控件,在MFC的对话框中添加一个语法高亮的文本编辑器,原创 2023-02-20 13:22:22 · 953 阅读 · 1 评论 -
使用luaBridge向C++程序添加脚本插件能力2(类扩展)
使用luaBridge编写一个c++的lua插件,测试类的绑定与脚本使用原创 2023-02-16 08:33:33 · 143 阅读 · 0 评论 -
tinode客户端安卓版编译手账
tinode的安卓客户端做一些更改,能忽略服务器证书校验,方便试验环境使用;原创 2022-12-16 13:43:53 · 1009 阅读 · 0 评论 -
让spdlog兼容printf风格的函数
让spdlog兼容使用printf风格的旧代码原创 2022-11-16 16:19:28 · 896 阅读 · 0 评论 -
go 的结构体极速序列化
golang的结构体极速序列化方式,原创 2022-11-07 16:12:48 · 1179 阅读 · 0 评论 -
golang单线程对比map与bigCache小对象存取性能差别
测试表明,1000万条左右小对象(20字节),使用map存储指针效率更高……原创 2022-11-07 14:58:54 · 798 阅读 · 0 评论 -
go-zero入门1
go-zero生成一个RPC的测试,测试一下GRPC原创 2022-10-27 13:06:20 · 1292 阅读 · 0 评论 -
telegtram的通信协议MTproto2.0学习5 之(数据封装与Telethon源码分析笔记)
telegram封装格式原创 2022-10-26 15:33:26 · 2793 阅读 · 0 评论 -
telegtram的通信协议MTproto2.0学习3 之 (telethon代码分析与TL的实现1)
telethon是一个Telegram客户端,非常适合学习协议的实现过程,原创 2022-10-20 17:10:20 · 3292 阅读 · 0 评论 -
android自定义ListView与Adapter
练习一个简单的多元素ListView原创 2022-10-16 19:49:23 · 1099 阅读 · 0 评论 -
python使用ElasticSearch7.17.6笔记
我个人的理解,es其实与mongoDb比较相似,都是文档类的数据库,只不过其更加强大,实现索引的相关部分;我用这个主要是看重了它水平扩展能力,而且实在是不想再去操作SQL语句了原创 2022-09-09 10:55:53 · 1041 阅读 · 0 评论 -
ubuntu安装chrome浏览器
ubuntu安装chrome默认是不能用的,需要更改配置原创 2022-08-04 15:44:58 · 1364 阅读 · 0 评论 -
python使用selenium以及selenium-wire做质量与性能检测
selenium以及selenium-wire做质量与性能检测原创 2022-08-04 14:49:17 · 5044 阅读 · 2 评论 -
c++ 在控制台输出彩色字体
彩色文本输出原创 2022-08-02 14:34:29 · 2852 阅读 · 0 评论 -
使用zeek做HTTP RPC性能检测
*需求**我的需求是在K8S的云上添加自己的非侵入式采集工具,并检测各种后端的RPC性能,比如http_rpc,grpc,mysql,redis,mongodb,以及自定义的rpc等网络交互过程的性能;**解决方案**直接在zeek现有基础上开发脚本,并开发日志读写工具将结果转存到自己的后端;这样就基本实现了我们的需求,后续的工作只是需要扩展各种协议,以及从日志流提取数据;首先,参考HTTP的相关脚本,记录自己需要的数据,写个hello,world。1)讲解了事件与事件队列的原理。...原创 2022-07-28 12:57:48 · 977 阅读 · 0 评论 -
linux下使用libz解压整个目录
使用libz实现文件夹压缩包整个解压;原创 2022-07-15 14:55:08 · 983 阅读 · 0 评论 -
如何使用OpenGts和gpsLogger配置与使用
使用gpsLogger上传位置信息,使用openGTS查看轨迹,原创 2022-07-14 13:56:39 · 730 阅读 · 0 评论 -
OpenGts2.6.7 安装笔记(windows更容易些)
在ubuntu或者centos8上架设opengts原创 2022-07-14 13:38:55 · 387 阅读 · 0 评论 -
docker镜像之带vnc的ubuntu
测试了2个带VNC功能的ubuntu镜像,可以运行图形界面的程序原创 2022-07-08 17:09:13 · 3668 阅读 · 4 评论 -
c++的字节序与符号位的问题
易错题整理,字节序原创 2022-07-04 14:03:50 · 14621 阅读 · 0 评论 -
ubuntu18/20 下如何生成core文件
ubuntu18/20 下如何生成core文件原创 2022-06-23 13:16:50 · 1218 阅读 · 1 评论 -
elasticsearch基础操作说明
基本操作1. 概述对于初次接触elasticsearch的童鞋们,为了便于理解,在此拿elasticsearch与mysql作对比进行说明:ES中的index相当于mysql的db,一个mysql可以有多个db,类似的,一个ES集群可以有多个index。ES中的type相当于mysql中的某个表,mysql中的某个db可以有多个表,在某个表中存储我们的某一类数据。ES中的type对应的mapping,相当于mysql中的表结构,定义了不同字段的数据类型。即,总结一下:当我们想要在ES中存原创 2022-03-30 17:14:49 · 2103 阅读 · 1 评论 -
Es7.1.1 & Skywalking 在windows下使用
Es7.1.1 & Skywalking 在windows下使用环境:windows10 proJDK1.8备注:不能使用太高的版本比如JDK17,会报错!ES和界面的版本必须一致,不然可能会出错;ES不要使用高版本,SK不支持8.x版本的ES;1. Elasticsearch7.1.1安装下载地址:https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.1.1-windows-x86_64.zip直接原创 2022-03-28 16:49:57 · 2716 阅读 · 0 评论