摘要: 1. 在BIO中只有一个核心对象 Stream,它是单向的数据传输通道,即每个Stream要么是输入要么是输出的,不可兼得。开发人员是面向Stream进行编程的。 2. 在NIO中有三个核心对象 Seletor、Channel、Buffer。其中Selector是一个事件循环线程,不停的监听注册在其 阅读全文
posted @ 2020-02-21 12:36 JaxYoun 阅读(149) 评论(0) 推荐(0)
摘要: 分布式一致性消息传递、事件处理等场景中十分重要: 1. At most Onece:最多一次,如果算子处理事件失败,算子将不再尝试该事件。 2. At Least Onece:至少一次,如果算子处理事件失败,算子会再次尝试该处理事件,直到有一次成功。 3. Exactly Once:严格地,有且仅处 阅读全文
posted @ 2020-02-21 12:33 JaxYoun 阅读(1161) 评论(0) 推荐(0)
摘要: 大致可以将大数据的计算引擎分成了 4 代。 1. 第一代的计算引擎,无疑就是Hadoop承载的MapReduce。它将每个JobApp都被设计为两个阶段,分别为Map和Reduce。对于上层应用来说,就不得不想方设法去拆分算法,甚至于不得不在 上层应用实现多个App的串联 ,才能完成一个完整的算法, 阅读全文
posted @ 2020-02-21 12:29 JaxYoun 阅读(519) 评论(0) 推荐(1)
摘要: 1、做静 态资源 服务器,可以用于前端项目发布,图片文件文件等静态服务器。 2、做反 向代理 服务器,域名往往配置在Nginx上,真正的业务服务器躲在其身后。 3、做负 载均衡 服务器,作为负载集群的入口网关。 另: Nginx + lua,形成类似OpenResty,作为一个全能的开发框架,更广泛 阅读全文
posted @ 2020-02-21 12:26 JaxYoun 阅读(838) 评论(0) 推荐(0)
摘要: 1、在一个完整的数据转换流程里往往涉及到多个具有衍生关系RDD,这些RDD其实是通过逻辑串联来利用装饰器模式层层包装扩展的的一堆对象,这些相邻RDD间必须有继承关系。并且比Java中的装饰器来的更彻底,借助Scala的抽象控制特性,这一系列RDD不代表任何实际数据,也不负责装载数据,描述的是纯粹的逻 阅读全文
posted @ 2020-02-20 19:10 JaxYoun 阅读(377) 评论(0) 推荐(0)
摘要: 1. 使用Navicat工具,优先将整个数据库的表和数据导出。 2. 如果遇到 文件损坏 错误可以在 表实例界面 选中所有表,然后将表转储为SQL文件(结构和数据)。 3. 在目标数据库执行导出的SQL文件,导入结构和数据。 4. 如果个别表因为各种原因(比如使用federated引擎建立了DB L 阅读全文
posted @ 2020-02-20 19:09 JaxYoun 阅读(505) 评论(0) 推荐(0)
摘要: 1、KeyBy 操作后,只有当 Key 的数量大于算子的并发实例数才能获得较好的计算性能。 A.而若Key 的数量比实例数量少,就会导致部分实例收不到数据,这些实例就得不到执行,这些实例的计算能力得不到充分发挥。 ~~B.当Key个数多余并行实例数时,由于同一个 Key 对应的所有数据都能发送到同一 阅读全文
posted @ 2020-02-20 19:08 JaxYoun 阅读(493) 评论(0) 推荐(0)
摘要: 逻辑计划 logicGraph或者jobGraph,其端点为operator,edge为数据流向。 operator往往代表一个函数。 同一个分区内的具有连续上下游关系的函数组成operator-chain,同一个operator-chain内的数据,在流动过程中不会出现序列化和分区间的网络通信。 阅读全文
posted @ 2020-02-20 19:06 JaxYoun 阅读(720) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2020-02-20 19:03 JaxYoun 阅读(803) 评论(0) 推荐(0)
摘要: 0、背景:在由于不想在小项目中引入SpringSecurity这种重量级安全框架,我自定义了一个LoginFilter来处理认证+授权逻辑。对于认证或授权失败的情况,最初是在filter中抛出异常,并携带401状态码,然后利用Spring的ControllerAdvice全局捕获这些异常并转换后返回 阅读全文
posted @ 2020-02-20 19:00 JaxYoun 阅读(801) 评论(0) 推荐(0)