缘起最近在公司分享了手撸RPC,因此做一个总结。概念篇RPC 是什么?RPC 称远程过程调用(Remote Procedure Call),用于解决分布式系统中服务之间的调用问题。通俗地讲,就是开发者能够像调用本地方法一样调用远程的服务。所以,RPC的作用主要体现在这两个方面:屏蔽远程调用跟本地调用的区别,让我们感觉就是调用项目内的方法;隐藏底层网络通信的复杂性,让我们更专注于业务逻辑。RPC 框
转载
2024-04-22 22:56:19
157阅读
摘要Android优秀的开发框架有很多,很多功能都有成熟的解决方案,比如网络请求、依赖注入、图片加载、数据库等都有很多开源的框架可以直接使用,我们可以站在巨人的肩膀上,组合一套自己常用的开发框架,也可以作为公司的开发框架,达到快速开发的目的。选择框架的原则:1、能满足自己的业务需求选择一个框架前首先考虑是否能满足自己或公司的需求,比较流行的框架基本上能满足我们大部分的需求2、主流的选择主流的框架网
转载
2023-06-28 19:14:04
108阅读
1.1常见日志框架1.1常见日志框架在项目开发过程中,我们可以通过 debug 查找问题。而在线上环境我们查找问题只能通过打印日志的方式查找问题。因此对于一个项目而言,日志记录是一个非常重要的问题。因此,如何选择一个合适的日志记录框架也非常重要。
在Java开发中,目前常用的日志框架包括Log4j 1,Log4j 2,Commons Logging,Slf4j,Logback,Jul。这些日志记
转载
2024-01-03 06:42:21
145阅读
1. 为什么使用Netty Netty是基于Java NIO的网络应用框架,它是一个NIO client-server(客户端服务器)框架,使用Netty可以快速开发网络应用,例如服务器和客户端协议。Netty提供了一种新的方式使开发网络应用程序具有更高的易用性和更强的扩展性。Netty的内部实现是很复杂的,但是Netty提供了简单易用的api从网络处理代码
转载
2023-12-20 09:34:47
90阅读
Netty 是什么我个人对于 Netty 的理解是:Netty 封装了 JDK 的 NIO,让使用者用的更爽,不用再写一大段复杂的代码了。官方介绍是:Netty 是一个异步事件驱动的网络应用框架,用于快速开发可维护的高性能服务器和客户端。使用 Netty 的好处在于:JDK 自带的 NIO 需要了解的概念田铎,编程复杂;Netty 底层 IO 模型随意切换,只需要修改参数,Netty 可以直接从
转载
2024-07-23 09:43:09
44阅读
目录1 unittest框架2 批量执行脚本2.1 构建测试套件2.2 用例的执行顺序2.3 忽略用例执行3 unittest断言4 HTML报告生成5 异常捕捉与错误截图6 数据驱动 1 unittest框架unittest 是python 的单元测试框架,它主要有以下作用:提供用例组织与执行:当你的测试用例只有几条时,可以不必考虑用例的组织,但是,当测试用例达到成百上千条时,大量的测试用例堆
转载
2024-05-30 10:35:17
17阅读
1. 模块的定义和加载 1.1 模块的定义 一个框架想要能支撑较大的应用,首先要考虑怎么做模块化。有了内核和模块加载系统,外围的模块就可以一个一个增加。不同的JavaScript框架,实现模块化方式各有不同,我们来选择一种比较优雅的方式作个讲解。 先问个问题:我们做模块系统的目的是什么?如果觉得这个问题难以回答,可以从反面来考虑:假如不做模块系统,有什么样的坏处? 我们经历过比较粗放、混乱的前端
转载
2024-06-24 12:39:08
30阅读
用JavaScript实现更复杂的交互(李晓华 2001年04月29日 01:50) 一、什么是框架 框架Frames最主要功用是"分割"视窗,使每个"小视窗"能显示不同的HTM L文件,不同框架之间可以互动(interact),这就是说不同框架之间可以交换讯息与资料。例如:假设您开了两个frames,第一个frame可显示书的目录,第二个frame则显示章节的具体内容。 框架可以将屏幕分割成
转载
2024-01-01 08:42:44
40阅读
javascript 框架 JavaScript是一种面向对象的脚本语言,长期以来一直是Web浏览器应用程序选择的客户端脚本接口。 JavaScript使Web开发人员可以通过编程方式处理Web页面上的对象,从而提供了一个可即时处理这些对象的平台。 首次引入JavaScript时,它通常用于在网页上提供一些琐碎的功能,例如时钟和浏览器状态栏中的滚动文本。 另一个常见功能是“滚动链接”,当用户将鼠标
转载
2024-03-11 10:53:53
42阅读
1、spring简介Spring 是一个开源框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件,同时为 J2EE 应用程序开发提供集成的框架。Spring的一个最大的目的就是使JAVA EE开发更加容易. 同时,Spring致力于提供一个以统一的、高效的方式构造整个应用,并且可以将单层框架以最佳的组合揉和在一起建立一个连贯的体系。可以
转载
2024-06-30 06:20:35
49阅读
1.什么是MyBatis? MyBatis的前身是Apache的开源项目iBatis。MyBatis几乎可以代替JDBC,是一个支持普通SQL查询,存储过程和高级映射的基于Java的优秀持久层框架。MyBatis与JDBC相比,减少了50%以上的代码量。并且满足高并发和高响应的要求,所以它成为最流行的Java互联网持久框架。2.优点:简单易学:本身就很小且简单。没有任何第三方依赖,最简单安装只要
转载
2023-07-04 09:47:41
44阅读
Java Web 框架 一、Struts2是一个基于MVC设计模式的Web应用框架在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts1和Struts2 的原理对比:https://wenku.baidu.com/view/6cb3ca0810661ed9ad51f3d9.htmlStruts2优点1、实现了MVC模式,层次结构
转载
2023-08-31 08:57:32
69阅读
Python是一种高级的、面向对象的编程语言,它可以用于开发各种类型的应用程序,包括Web应用、桌面应用、移动应用等。Python语言具有很多优点,它的语法简洁易懂,开发效率高,代码可读性强,适合初学者入门,同时也是专业开发人员的首选语言之一。下面我们将详细介绍Python语言的应用范围和优点。一、Web开发Python语言可以用于Web开发。Django和Flask是两个非常流行的Python
转载
2023-09-14 10:24:12
115阅读
1. IGListKit 作者是 Instagram EngineeringInstagram 程序员做的,IGListKit 是数据驱动的 UICollectionView 框架,为了构建快速和可扩展的列表。另外,它有助于你在 app 结束对于大量视图控制器的使用。看看这篇来自 Ray Wenderlich 的教程,关于如何在项目中实现这个库,或者读读这篇 Rodrigo Cavalcante
python通用测试框架大多数人用的是unittest+HTMLTestRunner,这段时间看到了pytest文档,发现这个框架和丰富的plugins很好用,所以来学习下pytest.image.pngpytest是一个非常成熟的全功能的Python测试框架,主要有以下几个特点:简单灵活,容易上手支持参数化能够支持简单的单元测试和复杂的功能测试,还可以用来做selenium/appnium等自动
转载
2024-08-05 09:42:45
29阅读
1:iframe的概念以及作用iframe是嵌入式框架, 是html标签, 还是一个内联元素, iframe 元素会创建包含另外一个文档的内联框架(即行内框架) . 说白了, iframe用来在页面嵌入其他页面.通常我们使用iframe直接直接在页面嵌套iframe标签指定src就可以了。<iframe src="demo_iframe.html"></iframe>2:i
转载
2023-11-07 11:56:57
68阅读
前端知识体系想要成为真正的“互联网Java全栈工程师”还有很长的一段路要走,其中前端是绕不开的一门必修课。本阶段课程的主要目的就是带领Java后台程序员认识前端、了解前端、掌握前端,为实现成为“互联网Java全栈工程师”再向前迈进一步。前端三要素HTML(结构):超文本标记语言(Hyper Text Markup Language),决定网页的结构和内容CSS(表现):层叠样式表(Cascadin
转载
2024-02-20 21:05:00
48阅读
1.MyBatis框架是一个优秀的数据持久化框架,在实体类和SQL语句之间建立映射关系,是一种半自动化的ORM实现。2.MyBatis是一个开源的数据持久层框架。内部封装了通过JDBC访问数据库的操作,支持普通的SQL查询、存储过程和高级映射,几乎消除了所有的JDBC代码和参数的手工设置以及结果集的检索。 主要思想是将程序中的大量SQL语句剥离出来,配置在配置文件中,实现SQL的灵活配
转载
2023-07-11 10:52:08
0阅读
Android广播(Broadcast)一、Broadcast简介Broadcast是android中的四大组件之一,是在组件之间传播数据(Intent)的一种机制。广播的发送者和接收者事先是不需要知道对方的存在的。这样带来的好处便是,系统的各个组件可以松耦合地组织在一起,这样系统就具有高度的可扩展性,容易与其它系统进行集成。广播具有以下特性:1.广播接收者的生命周期是非常短暂的,在接收到广播的时
转载
2023-06-30 18:08:03
186阅读
Redis原理篇—网络模型用户空间和内核态空间服务器大多都采用 Linux 系统,这里我们以 Linux 为例来讲解:ubuntu 和 Centos 都是 Linux 的发行版,发行版可以看成对 Linux 包了一层壳,任何 Linux 发行版,其系统内核都是 Linux。我们的应用都需要通过 Linux 内核与硬件交互。用户的应用,比如 redis,mysql 等其实是没有办法去执行访问我们操作
转载
2024-10-14 11:03:48
15阅读