上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 26 下一页
摘要: 同步场景中阻塞和非阻塞 我们是用传统的水壶烧水。在水烧开之前我们一直做在水壶前面,等着水开。这就是阻塞的。 我们是用传统的水壶烧水。在水烧开之前我们先去客厅看电视了,但是水壶不会主动通知我们,需要我们时不时的去厨房看一下水有没有烧开。这就是非阻塞的。 异步场景中阻塞和非阻塞 我们是用带有提醒功能的水 阅读全文
posted @ 2020-02-05 16:43 LiuChengloong 阅读(214) 评论(0) 推荐(0)
摘要: 基本思路:将数字存入 set 集合中并不是一个很好的选择,占用的空间太大。这里可以使用 bitmap 数据结构来解决这个问题。 32 位机器上,对于一个整型数,比如int a=1 在内存中占 32bit 位,这是为了方便计算机的运算。但是对于某些应用场景而言,这属于一种巨大的浪费,因为我们可以用对应 阅读全文
posted @ 2020-02-05 16:40 LiuChengloong 阅读(378) 评论(0) 推荐(0)
摘要: 今天在学习 Redis 时,看到一个名词叫做布隆过滤器,出于好奇的心里学习了一下,这里记录相关内容。 什么是布隆过滤器 巴顿.布隆于一九七零年提出 一个很长的二进制向量 (位数组) 一系列随机函数 (哈希) 空间效率和查询效率高 有一定的误判率(哈希表是精确匹配) 本质上布隆过滤器是一种数据结构,比 阅读全文
posted @ 2020-02-05 16:38 LiuChengloong 阅读(208) 评论(0) 推荐(0)
摘要: 在平时我们常常使用 Redis ,这里总结一下 Redis 的相关面试题和一些常见问题的解决方案。 Redis 在互联网公司一般有已下应用: String:缓存、限流、计数器、分布式锁、分布式 Session Hash:存储用户信息、用户主页访问量、组合查询 List:微博关注人时间轴列表、简单队列 阅读全文
posted @ 2020-02-05 16:37 LiuChengloong 阅读(277) 评论(0) 推荐(0)
摘要: 1.比较运算能用 就不用 。 2.明知就只有一条查询结果就使用 ,这样可以避免全表扫描。 3.建表时为列选择合适的数据类型。 4.使用 代替 ,如果结果集允许重复的话。 会对结果集去重,效率很低。 5.为获得相同结果集的多次执行,请保持 SQL 语句前后一致。 比如第一次查询 ,那么第二次查询请保持 阅读全文
posted @ 2020-02-05 16:35 LiuChengloong 阅读(134) 评论(0) 推荐(0)
摘要: 最近公司项目有几个逻辑运行的比较慢,于是通过对其执行的 SQL 进行分析,优化部分实现,以满足性能的要求,这里简单记录一下优化的过程和方法。 初步分析 1.首先找到需要优化的 SQL 云数据库一般都有提供慢 SQL 的页面 自己搭建的数据库就相对比较麻烦了,需要修改 my.cnf 中相关的配置文件来 阅读全文
posted @ 2020-02-05 16:33 LiuChengloong 阅读(128) 评论(0) 推荐(0)
摘要: 在我们项目中有一些导出的地方使用 get 请求后台,并且将页面上面的查询参数进行了序列化传递给后台。今天发现测试版服务器上的应用无法正常导出,最后发现是 Tomcat 的机制导致。 这是因为 Tomcat 严格按照 RFC 3986规范进行访问解析,而 RFC 3986规范定义了Url中只允许包含英 阅读全文
posted @ 2020-02-05 16:32 LiuChengloong 阅读(894) 评论(0) 推荐(0)
摘要: JSON Web Token(缩写 JWT)是目前最流行的跨域认证解决方案,这里简单介绍一下,以供以后参考学习。 传统的 session 的认证方式: 1、用户向服务器发送用户名和密码。 2、服务器验证通过后,在当前对话(session)里面保存相关数据,比如用户角色、登录时间等等。 3、服务器向用 阅读全文
posted @ 2020-02-05 16:31 LiuChengloong 阅读(192) 评论(0) 推荐(0)
摘要: 在使用 MQ 的时候,总会遇到消息丢失的问题,这里总结了几种可能导致消息丢失的情况并针对性的给出了解决方案。 生产者弄丢了数据 生产者将数据发送到 RabbitMQ 的时候,可能数据就在半路给搞丢了,因为网络啥的问题,都有可能。 此时可以选择用 RabbitMQ 提供的事务功能,就是生产者发送数据之 阅读全文
posted @ 2020-02-05 16:29 LiuChengloong 阅读(175) 评论(0) 推荐(0)
摘要: 今天重置服务器并重新安装 tomcat 的时候,原来的项目突然需要很长时间才可以启动,于是进行了一番排查... 查看 Tomcat 日志发现上面的问题。 网上说是 SecureRandom generateSeed 的原因,当会使用 /dev/random 生成种子。但是 /dev/random 是 阅读全文
posted @ 2020-02-05 16:27 LiuChengloong 阅读(244) 评论(0) 推荐(0)
上一页 1 ··· 14 15 16 17 18 19 20 21 22 ··· 26 下一页