月星墙的博客

Better Code, Better Life


  • 首页

  • 分类

  • 关于

  • 归档

  • 标签

  • 站点地图

  • 搜索

Junit

发表于 2021-08-19 | 分类于 java
使用@Rule @Rule是JUnit4.7加入的新特性,有点类似于拦截器,用于在测试方法执行前后添加额外的处理。实际上是@Before,@After的另一种实现 需要注解在实现了TestRule的public成员变量上或者返回TestRule的方法上 相应Rule会应用于该类每个测试方法 允许在测试类中非常灵活的增加或重新定义每个测试方法的行为,简单来说就是提供了测试用例在执行过程中通用功能的共享的能力 ^1 案例参考下文ErrorCollector ErrorCollector类收集错误统一抛出 Junit在遇到一个测试失败时,并会退出,通过ErrorCollector可实现收集所有的错误,等方法运行完后统一抛出 案例 123456789101112131415161718public class Example { @Rule public ErrorCollector collector = new ErrorCollector(); @Test public void example() { collector.addError(new RuntimeException("error 1")); System.out.println("========================= ...
阅读全文 »

大数据项目相关工具

发表于 2021-08-07 | 分类于 bigdata
相关工具说明 数据抽取层 sqoop(结构化关系型数据抽取)、flume(非结构化日志接入) 数据存储层 hadoop-hdfs、kafka(流式总线) 计算调度层 离线计算:hive、spark、MR、tez 实时计算:storm、spark、近年来flink也较多 数据调度:Airflow Azkaban Oozie等、Dolphin-scheduler 查询引擎层:ROLAP、MOLAP以及二者混搭 Hbase ES Apache Kylin Apache Druid https://www.cnblogs.com/tree1123/p/12866898.html https://blog.csdn.net/qq_38704184/article/details/106507062 TiDB Impala ClickHouse Presto http://www.360doc.com/content/20/0815/19/22849536_930520678.shtml Hawq Spark SQL Greenplum HANA 数据可视化层 基础框架:ECharts、D3、Three.js 商业:Tableau、DataV、FineReport、FineBI、PowerBI(微软) 开源:Bokeh、Matplotlib、Metabase、Super ...
阅读全文 »

大数据项目实践 —— 用户行为分析

发表于 2021-07-25 | 分类于 bigdata
简介 本项目源码参考smjava/bigdata-hadoop-project 可通过站长工具查看某网站的每日PV值(只有通过百度等外链进入网站的才会统计,直接输入网址无法被此类工具统计到),从而估算一下网站每日产生的数据量 集群大小 中小型30-50台,100台以上可认为是较大集群了 三一共6套集群:最新12台机器,最大68台,都是基于128G来说的;北京某交通分析,38台集群 spark(充分利用内存)、redis、hbase这种内存消耗较大的一般不混合部署;zk、hadoop这种可以混合部署 日志大小(按天算) 条数:千万级别-亿级别 大小:几百个G,中大型集群可能上PB/T;条数(PV数) * 每条大小(如1KB左右) 用户行为分析需求 本项目分别从七个大的角度来进行用户行为分析 用户基本信息分析模块 用户基本信息分析模块主要是从用户/访客和会员两个主要角度分析浏览相关信息,包括但不限于新增用户,活跃用户,总用户,新增会员,活跃会员,总会员以及会话分析等 浏览器信息分析模块 在用户基本信息分析的基础上添加一个浏览器这个维度信息:浏览器用户分析、浏览器会员分析、浏览器会话分析、浏览器PV分析 地域信息分析模块 活跃访客地域分析、跳出率分析(分析各个不同地域的跳出率情况) 用户浏览深度分析模块 外链数据分析模块 主要分析各个不同外链端带来的用户访问量数据: ...
阅读全文 »

HBase

发表于 2021-07-18 | 分类于 bigdata
简介 Use Apache HBase™ when you need random, realtime read/write access to your Big Data. This project’s goal is the hosting of very large tables – billions of rows X millions of columns – atop clusters of commodity hardware. Apache HBase is an open-source, distributed, versioned, non-relational database modeled after Google’s Bigtable: A Distributed Storage System for Structured Data by Chang et al. Just as Bigtable leverages the distributed data storage provided by the Google File System, Apache HBase provides Bigtable-like capabilities on top of Hadoop and HDFS. 官网、wiki v2.3、hbase相关配置说明 HBa ...
阅读全文 »

Visual Basic Script

发表于 2021-07-11 | 分类于 lang
简介 VBScript是 Visual Basic Script 的简称,即 Visual Basic 脚本语言,有时也被缩写为 VBS VBScript 是微软开发的一种脚本语言。使用 VBScript,可通过 Windows 脚本宿主调用 COM,所以可以使用 Windows 操作系统中可被使用的程序库 VBScript 一般被用在以下个方面 VBScript 经常被用来完成重复性的Windows 操作系统任务 用来指挥客户方的网页浏览器。在这一方面,VBS 与JavaScript 是竞争者 VBS相关脚本参考:https://www.jb51.net/list/list_114_1.htm 基本语法 '表示注释 不区分大小写 变量 变量声明:可以使用 Dim、Public 或 Private 语句来声明变量 123456789101112'简单变量dim namename=some value'数组变量:创建了一个包含2个元素的数组dim names(2)names(0)="George"names(1)="John"father=names(0)'多维数组dim table(4, 6) 程序123456789101112131415'子程序(无返回值)Sub mysub(argument1,argument2) some statementsEnd Sub ...
阅读全文 »

Hive

发表于 2021-06-01 | 分类于 bigdata
简介 The Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage using SQL. Structure can be projected onto data already in storage. A command line tool and JDBC driver are provided to connect users to Hive. Hive官网、下载、源码 Hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制 hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行 hive基于hdfs做存储,基于mr进行计算(将sql语句转成mr程序) Hive产生的原因 方便对文件及数据的元数据进行管理,提供统一的元数据管理方式 提供更加简单的方式来访问大规模的数据集,使用SQL语言进行数据分析(无需写MapReduce程序,降低数据分析门槛) 架构图 用户访问接口 CLI(Command Li ...
阅读全文 »

SOFAStack源码分析

发表于 2021-04-13 | 分类于 java
isle-sofa-boot模块隔离初始化 初始化SOFABoot模块:主要是初始化各模块的SpringContext上下文 如基于多Ark Biz启动,一般不会包含此包,各Biz间通信基于runtime-sofa-boot包完成 Spring启动完成后广播事件 Spring相关 12345678910111213141516171819202122232425// AbstractApplicationContext.java,参考[spring-ioc-src.md#refresh方法概览](/_posts/java/java-src/spring-ioc-src.md#refresh方法概览)public void refresh() throws BeansException, IllegalStateException { // ... this.finishRefresh();}// ServletWebServerApplicationContext.javaprotected void finishRefresh() { // 调用父类 super.finishRefresh(); WebServer webServer = this.startWebServer(); if (webServer ...
阅读全文 »

SOFAStack

发表于 2021-04-11 | 分类于 java
简介 官网、蚂蚁产品说明 SOFAStack技术栈 包含SOFABoot、SOFAArk、SOFARPC等子项目 其中SOFABoot是基于Springboot开发,可和SOFAArk结合使用 SOFABoot模块隔离 maven模块隔离的基础上,增加对Spring 上下文隔离 SOFAArk类隔离 每个模块都有独立的 ClassLoader,消除不同类版本冲突问题 Java模块化开发对比 参考文章 https://www.sofastack.tech/projects/sofa-boot/modular-development/ 基于代码组织上的模块化,如使用Maven 这是最常见的形式,在开发期,将不同功能的代码放在不同 Java 工程下,在编译期被打进不同 jar 包,在运行期,所有 Java 类都在一个 classpath 下,没做任何隔离 基于 Spring 上下文隔离的模块化,SOFABoot使用此方式 借用 Spring 上下文来做不同功能模块的隔离,在开发期和编译期,代码和配置也会分在不同 Java 工程中,但在运行期,不同模块间的 Spring Bean 相互不可见 但是所有的 Java 类还是在同一个 ClassLoader 下 类隔离,基于 ClassLoader 隔离的模块化,SOFAArk使用此方式 借用 ClassLoader 来做 ...
阅读全文 »

springboot-plugin-framework —— 插件化

发表于 2021-04-06 | 分类于 java
简介 2021-04转向sofastack springboot-plugin-framework、文档 基于pf4j springboot-plugin-framework扩展 对mybatis和mybatis-plus进行了支持,插件中可使用mybatis 对resources进行了支持,插件中可使用资源文件,从而显示视图层返回模板页面 开发时,开发时需要提前将插件编译出jar,再启动主程序 从而可让 idea 启动主程序时,自动编译插件包的配置。为了在每次启动主程序的时候,能够动态编译插件包,保证插件包的target是最新的 选择 File->Project Structure->Project Settings->Artifacts->点击+号->JAR->From modules whith dependencies->选择对应的插件包->确认OK 启动配置: 在Before launch 下-> 点击小+号 -> Build -> Artifacts -> 选择上一步新增的>Artifacts 之后启动时会产生一个out/artifacts的目录保存编译好的插件jar包 使用 新建插件时,需要继承BasePlugin类,并将其放在插件src根目录(插件只能扫描到当前类同级目录或其子目 ...
阅读全文 »

微前端

发表于 2021-03-03 | 分类于 web
简介 微前端: 由微服务衍生而来 微前端架构中一般会有个容器应用(container application)将各子应用(Bundle)集成起来 ^1 多 Bundle 集成方式 服务端集成:如服务端渲染SSR 构建时集成:如Code Splitting 常见的构建时集成方式是将子应用发布成独立的 npm 包,共同作为主应用的依赖项,构建生成一个供部署的 JS Bundle。然而,构建时集成最大的问题是会在发布阶段造成耦合,任何一个子应用有变更,都要整个重新编译 运行时集成:如通过 iframe、JS、Web Components 等方式 iframe实现缺点:https://www.yuque.com/kuitos/gky7yw/gesexv SPA(SinglePage Web Application)单页应用和MPA(MultiPage Application)多页应用区别参考:https://juejin.cn/post/6844903512107663368 相关资源 vue动态组件和异步组件说明 使用http-vue-loader可在非单页应用中引入.vue组件 可插拔式系统讨论 TODO 父子应用数据同步:https://blog.csdn.net/weixin_42234168/article/details/112180703 相关框架 qia ...
阅读全文 »
123…17
smalle

smalle

167 日志
14 分类
153 标签
RSS
欢迎关注公众号:阿壹族 欢迎关注公众号:阿壹族
© 2016 - 2025 smalle    
由 Hexo 强力驱动
主题 - NexT.Mist
站长统计
AD    
阿里云大礼包
©AEZO.CN    
圣骑科技
【One能抽屉】小程序
杂货铺(省钱小助手)