如何通过夏季旅游网站开发实现财富增长?

摘要:旅游网站开发设计文档,夏天做哪些网站致富,域名系统,网站图怎么做会高清1.Spring bean的生命周期 实例化 Instantiation属性赋值 Populate初始化 Initialization销毁 Destruction 2.S
旅游网站开发设计文档,夏天做哪些网站致富,域名系统,网站图怎么做会高清1.Spring bean的生命周期 实例化 Instantiation属性赋值 Populate初始化 Initialization销毁 Destruction 2.Spring AOP的创建在bean的哪个时期进行的 #xff08;图片转载自Spring Bean的完整生命周期#xff08;带流程图#xff0c;好记#xff09;#xff09; 3.MQ如…1.Spring bean的生命周期 实例化 Instantiation属性赋值 Populate初始化 Initialization销毁 Destruction 2.Spring AOP的创建在bean的哪个时期进行的 图片转载自Spring Bean的完整生命周期带流程图好记  3.MQ如何保证消息在断电的情况下依然不丢失 持久化到硬盘就是写入磁盘 4.MQ如何保证消息可靠性 从消息生产者到交换机用return回调保证消息可靠性这是消息级可靠放在消息中定义 从交换机到队列用confirm回调保障消息可靠性这是对象级可靠放在template中定义 从交换机到队列做消息的持久化 以上是发送的可靠性保障。 然后消费的可靠保障就设置消息重试包括发送消息重试、消费者重试还有重试失败后的入库。 5.你在项目中遇到哪些问题怎么解决的 一个业务模块物流信息模块需要优化。 优化了5个方面。分别是换用数据库、解决缓存穿透、雪崩、击穿问题、优化布隆过滤器。 详细回答 好的。我做的物流信息模块具体实现了用户查看物流进度的需求。用户查看的物流进度是一条条追加的从广州到长沙首先从揽收的营业点开始到区分拣中心再到广州转运中心再到长沙转运中心、岳麓区分拣中心、具体的营业点首先显示“快递已揽收”然后显示“快递已到广州某区分拣中心”...总而言之一个用户的一件快递也就是一条订单可能会有多条运单数据。第一个优化的地方就在这里。试想一下如果我们使用MySQL存储用户查看的信息势必会产生多条数据。而使用MongoDB可以在一条数据中添加多个字段这样用一条数据就能存下一个订单的信息。 而第二个优化的情景则是解决缓存雪崩的问题。缓存雪崩是指短时间乃至同时有很多Redis的key失效这时候的访问可能就会给数据库带来很大压力乃至让数据库崩溃。应对这种情况我们设置了随机过期时间然后进行了服务降级也就是对非核心数据的访问暂缓返回指定的信息。 还有一种情况是Redis宕机这时候我们用到了Caffeine和Redis做了多级缓存。 第三个优化的地方我们面对了可能存在的缓存穿透问题。一个数据如果在多级缓存和数据库中都没有那么每次访问都会访问到数据库过多这样的访问可能会造成服务器崩溃这就是缓存穿透问题。为了解决这个问题我们使用了布隆过滤器。布隆过滤器用一些算法比如哈希算法将被过滤的数据映射到一个很长的位图上将原本的0置为1。下次访问数据时我们首先将查询的数据投入布隆过滤器如果过滤结果为0则表示不存在就直接返回。 第四个优化的地方在于布隆过滤器过滤结果为1也不一定保证就存在数据因为有可能两个不同的数据哈希值一样。这时候我们可以增加算法但计算时也需要耗时增加过多也会让效率很低。所以应该适当添加算法数量不用过少也不能过多。 第四我们优化了缓存击穿问题。高并发场景下指定的key失效就会造成缓存击穿问题。我们用加锁的方式来处理这个情况。 更多可见我上篇博客面试打底稿⑦ 项目一的第三部分_zrc007007的博客-CSDN博客 6.MySQL在大量数据情况下如何对查询进行优化 分三种情况讨论 单条SQL运行慢部分SQL运行慢整个SQL运行慢 详细回答 就拿MySQL来说吧。对于需要优化的查询慢的数据库分三种情况讨论 单条SQL运行慢部分SQL运行慢整个SQL运行慢 单条SQL运行慢 对于第一种情况单条SQL运行慢一般有两种常见原因 未正常创建或使用索引表中数据量太多了 首先我们检查是否正常创建了索引 然后检查是否正常触发了索引查询。 以下情况不能触发索引应该避免 在 where 子句中使用 ! 或者 操作符查询引用进行的是全表扫描 前导模糊查询时触发的时全索引扫描或全表扫描因为它不能利用索引的顺序、得一个个去找。也就是查询时不能用这样的字段 %XX 或 %XX% 带有条件oror条件中不是每个列都有索引时。这时候必须在每个列上面都加上索引才能触发索引查询 在 where 子句中对字段进行表达式操作。
阅读全文