BigDecimal加减乘除运算以及四舍五入
这篇文章介绍了BigDecimal的加减乘除运算以及四舍五入的方法。其中包括加法、减法、乘法、除法和求绝对值的操作。同时还介绍了四舍五入的不同模式,包括ROUND_DOWN、ROUND_UP、ROUND_CEILING、ROUND_FLOOR、ROUND_HALF_DOWN和ROUND_HALF_UP。文章末尾还给出了一个示例。
前端
未读
前端最常用UI组件库合集
这篇文章介绍了前端常用的UI组件库合集。其中包括Vue PC端UI组件库,如Element UI、iview和Ant Design。还介绍了Vue移动端UI组件库,例如Vant和NutUI。此外还提到了Uniapp移动端UI组件库uView UI。这些组件库可以帮助开发者快速开发,并提供了丰富的组件和便捷的工具。
UUID的弊端以及雪花算法
这篇文章介绍了UUID的弊端以及雪花算法。在复杂分布式系统中,需要对大量的数据和消息进行唯一标识,因此需要一个能够生成全局唯一ID的系统。文章首先讨论了为什么需要分布式全局唯一ID以及分布式ID的业务需求、ID生成规则部分硬性要求、ID号生成系统的可用性要求等。接着,介绍了一般通用方案,包括UUID、数据库自增主键和Redis生成全局id策略。然后详细介绍了雪花算法,包括其概述、结构、代码以及优缺点。文章最后指出,UUID数据的无序性和每次插入对索引底层的B+树进行修改会导致一些问题,如分裂和不饱和节点的产生。
重磅!张勇宣布阿里GPT全家桶来了!
这篇文章介绍了阿里集团CEO张勇在2023年阿里云峰会上宣布,阿里所有产品将接入“通义千问”大模型进行改造。以钉钉为例,通过接入通义千问大模型,钉钉可以实现自动生成会议记录、总结会议纪要、生成待办事项等功能。目前阿里钉钉和天猫精灵等产品已接入通义千问测试,并计划在测试认证后正式发布新功能。文章还提到谷歌和微软也都推出了AI工具,百度也推出了文心一言,国内AI发展势头迅猛。张勇表示,阿里云已做好准备迎接全新的AI时代。
PO、VO、DAO、BO、DTO、POJO 能分清吗?
这篇文章介绍了PO、VO、DAO、BO、DTO、POJO的含义和用途。PO是持久对象,VO是值对象,DAO是数据访问对象接口,BO是业务对象层,DTO是数据传输对象,POJO是简单的Java对象。文章还提到了《阿里巴巴Java开发规范》中关于领域模型的规约,以及各个对象在不同层次中的使用。
网络
未读
HTTP 3.0彻底放弃TCP,TCP到底做错了什么?
这篇文章介绍了HTTP 3.0放弃TCP的原因。TCP存在的问题主要有发送窗口的队头阻塞和接收窗口的队头阻塞。发送窗口需要按序确认数据,如果丢失了某个数据的ACK确认报文,会导致发送窗口无法移动,从而影响后续数据的发送。接收窗口在收到有序数据时才能滑动,如果收到的数据不是有序的,可能会导致接收窗口阻塞。因此,HTTP 3.0选择基于UDP协议并应用QUIC实现可靠传输。
IDEA
未读
IntelliJ IDEA 2023.1 正式发布,看看又多了那些神仙功能...
这篇文章介绍了IntelliJ IDEA 2023.1的新版本发布,包含了许多改进和优化,提升了用户体验和便捷性。它针对新的用户界面进行了重构,并实施了性能增强措施,使得导入Maven项目更快,IDE功能更早可用。新版本还提供了简化的提交流程、Spring Security匹配器和请求映射导航的支持等等。同时,还介绍了一些关于界面和性能方面的改进。
分布式ID生成算法——雪花算法
这篇文章介绍了分布式ID生成算法——雪花算法。首先,文章讨论了分布式ID的需求和问题,指出了在分布式系统中使用自增ID可能导致冲突的问题。接着,文章详细介绍了雪花算法的结构和特点,包括符号位、时间戳、工作机器ID和序列号。雪花算法能够在高并发情况下保证分布式ID的全局唯一性,并且生成的ID按照时间升序排列。此外,文章还讨论了时钟回拨问题以及解决方案,并简单介绍了UUID的缺点。
网络
未读
HTTP和HTTPS的区别
这篇文章介绍了HTTP和HTTPS的区别。HTTP是超文本传输协议,基于传输层的TCP协议进行通信,通用无状态的协议,使用80端口。而HTTPS则是安全的超文本传输协议,在HTTP的基础上加入了SSL层,使用443端口。HTTPS相比于HTTP协议具有更好的安全性,但技术门槛较高,需要年费的证书,且加重了服务端负担。目前大多数网站并不关心数据的安全性和保密性,因此对它们来说,HTTPS的优点并不适用。
分布式ID生成算法——leaf算法
这篇文章介绍了分布式ID生成算法——leaf算法。它是在雪花算法的基础上提出的,具有全局唯一、高可用、高并发、低延迟、接入简单的优点。leaf算法有两种生成模式,分别是号段模式和雪花ID模式。号段模式下,ID从低位增长,较少的号段浪费,能够容忍MySQL短时不可用。双Buffer优化可以保证无论何时DB出现问题,都有一个buffer可以正常向外提供服务。动态步长根据上一次的更新周期T和号段长度step来决定这一次更新的号段长度。