摘要: Task.Run 是在 dotnet framework 4.5 之后才可以使用, Task.Factory.StartNew 可以使用比 Task.Run 更多的参数,可以做到更多的定制。 可以认为 Task.Run 是简化的 Task.Factory.StartNew 的使用,除了需要指定一个线 阅读全文
posted @ 2019-11-07 12:17 雨飞 阅读(1185) 评论(0) 推荐(1)
摘要: OSI 七层模型通过七个层次化的结构模型使不同的系统不同的网络之间实现可靠的通讯,因此其最主要的功能就是帮助不同类型的主机实现数据传输 。完成中继功能的节点通常称为中继系统。一个设备工作在哪一层,关键看它工作时利用哪一层的数据头部信息。网桥工作时,是以MAC头部来决定转发端口的,因此显然它是数据链路 阅读全文
posted @ 2019-11-06 18:01 雨飞 阅读(1588) 评论(0) 推荐(1)
摘要: 里程碑图通过图块来显示项目、进度和其他时间相关的系统进展的内在关系随着时间变化的情况。其中,横轴表示时间,纵轴表示任务(项目),图块表示在整个期间上计划和实际的任务完成的时间点。里程碑图可以直观地表明任务计划在什么时候进行,以及实际进展与计划要求的对比。管理者由此可以非常方便地弄清每一项任务(项目) 阅读全文
posted @ 2019-11-06 10:35 雨飞 阅读(2516) 评论(0) 推荐(0)
摘要: 如果项目由数个任务组成,任务之间又有所关联,我们该怎样准确明了的显示项目的进度情况呢? 甘特图,是一种非常实用的图表类型,又称为横道图和条状图,其通过条状图来显示项目、进度和其他时间相关的系统进展的内在关系随着时间的进展情况。 一、效果图。 从最终的效果图中可以看出项目的进展情况和持续时间,也可以对 阅读全文
posted @ 2019-11-06 10:28 雨飞 阅读(1205) 评论(0) 推荐(0)
摘要: 什么是系统架构师? 系统架构师是一个既需要掌控整体又需要洞悉局部瓶颈并依据具体的业务场景给出解决方案的团队领导型人物。一个架构师得需要足够的想像力,能把各种目标需求进行不同维度的扩展,为目标客户提供更为全面的需求清单。 架构师在软件开发的整个过程中起着很重要的作用。 如何才能成为系统架构师? 首先必 阅读全文
posted @ 2019-11-06 10:21 雨飞 阅读(793) 评论(0) 推荐(0)
摘要: Collection(单列集合) 3 List(有序,可重复) 4 ArrayList 5 底层数据结构是数组,查询快,增删慢 6 线程不安全,效率高 7 Vector 8 底层数据结构是数组,查询快,增删慢 9 线程安全,效率低 10 LinkedList 11 底层数据结构是链表,查询慢,增删快 12 线程不安全,效率高 13 Set(无序,唯一) 14 HashSet 15 底层数据结构是哈 阅读全文
posted @ 2019-11-05 16:55 雨飞 阅读(1984) 评论(0) 推荐(0)
摘要: 1.单点 2.主从 3.哨兵 4.集群 阅读全文
posted @ 2019-10-31 18:32 雨飞 阅读(1506) 评论(0) 推荐(0)
摘要: 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。本文链接:https://blog.csdn.net/LuQiaoYa/article/details/89243231什么是缓存雪崩,缓存穿透,缓存预热,缓存更新,缓存降级?一、缓存雪崩:二、缓 阅读全文
posted @ 2019-10-31 17:26 雨飞 阅读(762) 评论(2) 推荐(0)
摘要: 一、前言 近乎所有与Java相关的面试都会问到缓存的问题,基础一点的会问到什么是“二八定律”、什么是“热数据和冷数据”,复杂一点的会问到缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题,这些看似不常见的概念,都与我们的缓存服务器相关,一般常用的缓存服务器有Redis、Memcached等,而笔 阅读全文
posted @ 2019-10-31 17:25 雨飞 阅读(922) 评论(0) 推荐(0)
摘要: 1.背景RabbitMQ是一个由erlang开发的AMQP(Advanved Message Queue)的开源实现。 2.应用场景2.1异步处理场景说明:用户注册后,需要发注册邮件和注册短信,传统的做法有两种1.串行的方式;2.并行的方式 (1)串行方式:将注册信息写入数据库后,发送注册邮件,再发 阅读全文
posted @ 2019-10-31 09:54 雨飞 阅读(139) 评论(0) 推荐(0)