九路 九路
4年前
HTTPS 原理详解
摘要:本文尝试一步步还原HTTPS的设计过程,以理解为什么HTTPS最终会是这副模样。但是这并不代表HTTPS的真实设计过程。在阅读本文时,你可以尝试放下已有的对HTTPS的理解,这样更利于“还原”过程。我们先不了聊HTTP,HTTPS,我们先从一个聊天软件说起,我们要实现A能发一个hello消息给B:如果我们要实现这个聊天软件,本文只考虑安全性问题,要实现
Wesley13 Wesley13
4年前
java实现任务调度
最近的一个小项目是做一个简单的数据仓库,需要将其他数据库的数据抽取出来,并通过而出抽取成页面需要的数据,以空间换时间的方式,让后端报表查询更快。因为在抽取的过程中,有一定的先后顺序,需要做一个任务调度器,某一优先级的会先执行,然后会进入下一个优先级的队列任务中。先定义了一个Map的集合,key是优先级,value是任务的集合,某一个优先级内的任务是并发执
Wesley13 Wesley13
4年前
J2Cache 和普通缓存框架有何不同,它解决了什么问题?
不少人看到J2Cache第一眼时,会认为这就是一个普普通通的缓存框架,和例如Ehcache、Caffeine、SpringCache之类的项目没什么区别,无非是造了一个新的轮子而已。事实上完全不是一回事!目前缓存的解决方案一般有两种:内存缓存(如Ehcache)——速度快,进程内可用集中式缓存(如Redis)——
Stella981 Stella981
4年前
Hessian不能正确序列化和反序列化BigDecimal的解决
某次往Redis里面缓存对象,发现取出的对象里面,BigDecimal属性全都变成了0。后发现问题出在使用的序列化、反序列化的工具Hessian上面。Hessian的这个问题,从网上搜索,可以说是一大堆。看到早期的解决方案是在jar包的METAINF目录里面新建hessian目录,并填入两个配置文件,告诉Hessian,类的转换关系。但是现在大家都
Wesley13 Wesley13
4年前
mysql面试题及答案
01\.列举常见的关系型数据库和非关系型都有那些?1.关系型数据库通过外键关联来建立表与表之间的关系,常见的有:SQLite、Oracle、mysql2.非关系型数据库通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定常见的有:MongoDb、redis02\.MySQL常见数据库引擎
Stella981 Stella981
4年前
Redis面试:八问字典内部构造与rehash,这谁顶的住啊!
字典是一种用于保存键值对的抽象数据结构,也被称为查找表、映射或关联表。在字典中,一个键(key)可以和一个值(value)进行关联,这些关联的键和值就称之为键值对。抽象数据结构,啥意思?就是可以需要实际的数据结构是实现这个功能。抽象,意味着它这是实现功能的标准,凡是能够完成这些功能的都可以是其实现。redis的字典
Stella981 Stella981
4年前
LiteHttpServer 2.0 Feature
占坑,2.0版本应该具备一下特性:1.引入高性能异步io2.Lua高并发支持3.引入http解析库,更完整的支持http协议4.更智能的文件缓存策略5.引入redis的支持6.更强大的高性能异步策略7.支持重定向到其他http服务器,形如nginx的代理功能.有空再开发,并且开源1.0版本URL:http
sum墨 sum墨
1年前
《花100块做个摸鱼小网站! 》第三篇—热搜表结构设计和热搜数据存储
大家好呀,我是summo,第一篇已经教会大家怎么去阿里云买服务器,以及怎么搭建JDK、Redis、MySQL这些环境。第二篇我们把后端的应用搭建好了,并且完成了第一个爬虫(抖音)。那么这一篇我会教大家如何将爬取到的数据保存到数据库,并且可以通过接口获取到,为后面的前端界面提供数据源。
程序员小五 程序员小五
1年前
融云IM干货丨IM服务消息推送,推送通知失败时,SDK会提供哪些错误信息?
当推送通知失败时,SDK可能会提供以下错误信息:推送服务未开启或配置错误:确保已经在IM控制台开启了推送服务,并且正确配置了推送证书或密钥。设备未正确注册推送服务:检查设备是否成功注册到了推送服务,获取到了正确的设备令牌。应用权限问题:确保应用有发送通知的
程序员小五 程序员小五
1年前
融云IM干货丨IM服务消息推送,推送通知失败时,SDK日志能提供哪些额外信息?
推送通知失败时,SDK日志可以提供以下额外信息帮助诊断问题:错误码和错误描述:SDK可能会返回具体的错误码和对应的错误描述,这些信息可以帮助开发者快速定位问题。例如,腾讯云推送服务的错误码列表中包含了各种错误码及其含义,如1008006表示Token无效,