自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Carroll的博客

谦虚、勇敢且真诚待人做事;重基础,用心做技术。

  • 博客(795)
  • 资源 (9)
  • 收藏
  • 关注

原创 PanGu,常用各类型的公共模块-微组件

常用的公共模块-微组件通过沉淀下来的微组件,可以实现通用能力的沉淀,共享,复用。使用各种设计模式和代码规范,借鉴开源框架中好的代码实现,帮助自我沉淀与总结。项目Git地址:https://gitee.com/carroll18/pangu.git。

2023-12-29 10:32:20 1082

原创 Tyr,主流登录认证都已实现

🎉基于Spring Boot2.7、Spring Security5.7、Spring Authorization Server 0.4等主流技术栈的登录认证方案。项目实现了普通的登录认证授权,OAuth2认证授权服务器和资源服务器,基于Token和Session两种方案的单点登录,基本满足常见的登录认证场景。 ✨✨点个star ➕关注更新。

2023-07-01 12:05:13 351 6

原创 MVC框架

MVC 的几种形式和变体。JSP Model 1:请求处理的整个过程,全部都耦合在 JSP 页面里面完成;JSP Model 2:MVC 分别通过 JavaBean、JSP 和 Servlet 解耦成三层;MVC 的常见形式一:数据由 Controller 调用 Model 来准备,并传递给 View 层;MVC 的常见形式二:Controller 发起对数据的修改,在 View 中查询修改后的数据并展示,二者分别调用 Model;

2024-01-16 11:16:51 898

原创 三方接口对接常见数据处理方式汇总

日常开发中,我们经常会对接各种各样的第三方平台,常常需要对接口接入的数据参数进行处理,比如验签,解密,数据转换,数据二次封装等情况,本文总结了一些常见的数据处理案例,基本满足日常所见的各种情况,以供学习。POST 一般用来向服务端提交数据,本文主要讨论 POST 请求数据的几种方式。

2024-01-16 11:15:10 1098

原创 分布式技术之故障恢复技术

假设,从 Slave 1、Slave 2 和 Slave 3 中选举出 Slave 2 作为新的 Master,则 Slave 2 需要承担原来 Master 的职责,继续为用户提供服务,因此当用户 A 再次访问集群时,提供服务的是新选出的 Master,也就是 Slave 2。节点故障和网络故障也有交叉的地方,比如网络故障产生的原因可能是节点故障,即因为节点故障导致节点间无法通信,而不是纯粹的网络链路问题。对于时延不太敏感的场景,k 或 T 可以设置得大一些,降低误判率,但却会增加发现故障的时间。

2023-12-31 10:00:47 487

原创 分布式技术之故障隔离技术

故障隔离就是,把故障通过某种方式与其他正常模块进行隔离,以保证某一模块出现故障后,不会影响其他模块。分布式系统,故障隔离,就是采用一定的策略,以实现当某个模块故障时,不会影响其他模块继续提供服务,以保证整个系统的可用性。所以说,故障隔离,可以避免分布式系统出现大规模的故障,甚至是瘫痪,降低损失。在分布式系统中,要实现故障隔离,通常需要在进行系统设计时,提前对可能出现的故障进行预防,以使得在出现故障后能实现故障隔离。此外,由于是提前设计预防的,因此故障隔离还可以帮助快速定位故障点。

2023-12-31 10:00:16 859

原创 分布式技术之流量控制技术

流量控制,如果学过计算机网络的话,第一反应肯定是网络传输中的流量控制。网络传输中的流量控制,就是让发送方发送数据的速率不要太快,让接收方来得及接收数据,具体的实现方法就是滑动窗口。简单来讲,滑动窗口指的是,在任意时刻,发送方都维持一个连续的允许发送的数据大小,称为发送窗口;接收方也会维持一个连续的允许接收的数据大小,称为接收窗口。每次发送方给接收方发送数据后,必须收到接收方返回的确认消息,发送窗口才可向后移动,发送新的数据。通过一个简单的例子,来看看滑动窗口在网络流量控制中,是如何发挥作用的吧。

2023-12-31 09:59:42 932

原创 分布式技术之负载均衡技术

通常情况下,负载均衡可以分为两种:一种是请求负载均衡,即将用户的请求均衡地分发到不同的服务器进行处理;另一种是数据负载均衡,即将用户更新的数据分发到不同的存储服务器。分布式系统中,服务请求的负载均衡是指,当处理大量用户请求时,请求应尽量均衡地分配到多台服务器进行处理,每台服务器处理其中一部分而不是所有的用户请求,以完成高并发的请求处理,避免因单机处理能力的上限,导致系统崩溃而无法提供服务的问题。比如,有 N 个请求、M 个节点,负载均衡就是将 N 个请求,均衡地转发到这 M 个节点进行处理。

2023-12-31 09:59:06 815

原创 分布式技术之缓存技术

在计算机领域,缓存技术一般是指,用一个更快的存储设备存储一些经常用到的数据,供用户快速访问。用户不需要每次都与慢设备去做交互,因此可以提高访问效率。分布式缓存就是指在分布式环境或系统下,把一些热门数据存储到离用户近、离应用近的位置,并尽量存储到更快的设备,以减少远程数据传输的延迟,让用户和应用可以很快访问到想要的数据。我们通常说的分布式数据缓存,属于计算机应用中的缓存的一种。而计算机应用中的缓存,一般指内存,即内存存储了用户经常访问的数据,用户或应用不再需要到磁盘中去获取相应的数据,大幅提高访问速度。

2023-12-31 09:58:49 805

原创 分布式技术之数据复制技术

数据复制是一种实现数据备份的技术。数据复制技术,可以保证存储在不同节点上的同一份数据是一致的。这样当一个节点故障后,可以从其他存储该数据的节点获取数据,避免数据丢失,进而提高了系统的可靠性。比如,现在有节点 1 和节点 2,节点 1 上存储了 10M 用户数据,直观地说,数据复制技术就是将节点 1 上的这 10M 数据拷贝到节点 2 上,以使得节点 1 和节点 2 上存储了相同的数据,也就是节点 2 对节点 1 的数据进行了备份。

2023-12-31 09:58:19 844

原创 分布式技术之数据分布方式

假设,我们采用最简单的哈希方法,用户 id% 节点总数 (3) 进行哈希映射,id%3 = 0 的所有用户信息存储到节点 1 的 Partition1, id%3=1 的所有用户信息存储到节点 2 的 Partition2,id%3=2 的所有用户信息存储到节点 3 的 Partition3。数据分片是从数据的维度进行划分,是指将一个数据集合按照一定的方式划分为多个数据子集,不同的数据子集存在不同的存储块上,而这些存储块可以在不同的节点上,也可以在同一节点上。知识扩展:数据分片和数据分区,有何区别?

2023-12-30 09:53:41 1040

原创 分布式技术之分布式数据存储系统

分布式存储系统的核心逻辑,就是将用户需要存储的数据根据某种规则存储到不同的机器上,当用户想要获取指定数据时,再按照规则到存储数据的机器里获取。如下图所示,当用户(即应用程序)想要访问数据 D,分布式操作引擎通过一些映射方式,比如 Hash、一致性 Hash、数据范围分类等,将用户引导至数据 D 所属的存储节点获取数据。获取数据的整个过程与商店购物的过程是不是有些类似呢?顾客到商店购物时,导购会根据顾客想要购买的商品引导顾客到相应的货架,然后顾客从这个货架上获取要购买的商品,完成购物。这里的。

2023-12-30 09:52:33 823

原创 分布式技术之CAP理论

结合电商的例子,带你理解 CAP 的含义。假设某电商,在北京、杭州、上海三个城市建立了仓库,同时建立了对应的服务器{A, B, C}用于存储商品信息。比如,某电吹风在北京仓库有 20 个,在杭州仓库有 10 个,在上海仓库有 30 个。那么,CAP 这三个字母在这个例子中分别代表什么呢?C 代表 Consistency,一致性,是指所有节点在同一时刻的数据是相同的,即更新操作执行结束并响应用户完成后,所有节点存储的数据会保持相同。

2023-12-30 09:51:59 833

原创 分布式技术之分布式消息队列通信

队列是一种具有先进先出特点的数据结构,消息队列是基于队列实现的,存储具有特定格式的消息数据,比如定义一个包含消息类型、标志消息唯一性的 ID、消息内容的一个结构体作为消息数据的特定格式。消息以特定格式放入这个队列的尾部后可以直接返回,并不需要系统马上处理,之后会有其他进程从队列头部开始读取消息,按照消息放入的顺序逐一处理。引入消息队列的好处是,提高响应速度,以及实现组件间的解耦。

2023-12-30 09:51:17 817

原创 分布式技术之分布式发布订阅通信

发布订阅的三要素是生产者、消费者和消息中心,生产者负责产生数据放到消息中心,消费者向消息中心订阅自己感兴趣的消息,当发布者推送数据到消息中心后,消息中心根据消费者订阅情况将相关数据推送给对应的订阅者。

2023-12-30 09:50:34 783

原创 分布式技术之分布式远程调用通信

本地调用通常指的是,进程内函数之间的相互调用;而远程调用,是进程间函数的相互调用,是进程间通信 IPC(Inter-Process Communication)的一种方式。在分布式领域中,一个系统由很多服务组成,不同的服务由各自的进程单独负责。因此,远程调用在分布式通信中尤为重要。

2023-12-30 09:50:02 805

原创 分布式技术之分布式计算流水线模式

分布式领域的流水线计算模式,就是参考了工业生产中的流水作业模式,将一个任务分为多个步骤执行,使得不同任务可以并行执行。此外,你肯定还会想到计算机技术中的流水线计算吧。计算机中的**流水线(Pipeline)**技术是一种将每条指令拆分为多个步骤,多条指令的不同步骤重叠操作,从而实现几条指令并行处理的技术。现代 CPU 指令采用了流水线设计,将一条 CPU 指令分为取指(IF)、译码(ID)、执行(EX)、访存(MEM)、回写(WB)五级流水线来执行。

2023-12-29 09:37:41 894

原创 分布式技术之分布式计算Actor模式

Actor 模型又是什么呢?Actor 模型,代表一种分布式并行计算模型。这种模型有自己的一套规则,规定了 Actor 的内部计算逻辑,以及多个 Actor 之间的通信规则。在 Actor 模型里,每个 Actor 相当于系统中的一个组件,都是基本的计算单元。Actor 模型的计算方式与传统面向对象编程模型(Object-Oriented Programming,OOP)类似,一个对象接收到一个方法的调用请求(类似于一个消息),从而去执行该方法。

2023-12-29 09:37:08 916

原创 分布式技术之分布式计算Stream模式

近年来,由于网络监控、传感监测、AR/VR 等实时性应用的兴起,一类需要处理流数据的业务发展了起来。比如各种直播平台中,我们需要处理直播产生的音视频数据流等。这种如流水般持续涌现,且需要实时处理的数据,我们称之为流数据。总结来讲,流数据的特征主要包括以下 4 点:数据如流水般持续、快速地到达;海量数据规模,数据量可达到 TB 级甚至 PB 级;对实时性要求高,随着时间流逝,数据的价值会大幅降低;数据顺序无法保证,也就是说系统无法控制将要处理的数据元素的顺序。

2023-12-29 09:35:54 860

原创 分布式技术之分布式计算MR模式

分而治之(Divide-and-Conquer),是计算机处理问题的一个很重要的思想,简称为分治法。顾名思义,分治法就是将一个复杂的、难以直接解决的大问题,分割成一些规模较小的、可以比较简单的或直接求解的子问题,这些子问题之间相互独立且与原问题形式相同,递归地求解这些子问题,然后将子问题的解合并得到原问题的解。在分布式领域,适合分治法的问题具有哪些特征吧。问题规模比较大或复杂,且问题可以分解为几个规模较小的、简单的同类型问题进行求解;子问题之间相互独立,不包含公共子问题;

2023-12-29 09:35:02 1037

原创 分布式技术之分布式共享状态调度架构

集群中需要管理的对象主要包括两种:一是,资源的分配和使用状态;二是,任务的调度和执行状态;在单体调度中,这两种对象都是由单体调度器管理的,因此可以比较容易地保证全局状态的一致性,但问题是可扩展性较差(支持业务类型受限),且存在单点瓶颈问题。而在两层调度中,这两种对象分别由第一层中央调度器和第二层 Framework 调度器管理,由于 Framwork 调度器只能看到部分资源,因此不能保证全局状态的一致性,也不容易实现全局最优的调度。为了解决这些问题,一种新的调度器架构被设计了出来。

2023-12-28 09:36:43 925

原创 分布式技术之分布式两层调度架构

两层调度结构对应的就是两层调度器,资源的使用状态同时由中央调度器和第二层调度器管理,中央调度器从整体上进行资源的管理与分配,将资源分配到第二层调度器;再由第二层调度器负责将资源与具体的任务配对,因此第二层调度可以有多个调度器,以支持不同的任务类型。如下图所示,Scheduler-1 表示第一层调度,负责收集和管理集群中的资源信息;

2023-12-28 09:35:48 804

原创 分布式技术之分布式单体调度架构

分布式系统中的单体调度是指,一个集群中只有一个节点运行调度进程,该节点对集群中的其他节点具有访问权限,可以搜集其他节点的资源信息、节点状态等进行统一管理,同时根据用户下发的任务对资源的需求,在调度器中进行任务与资源匹配,然后根据匹配结果将任务指派给其他节点。单体调度器拥有全局资源视图和全局任务,可以很容易地实现对任务的约束并实施全局性的调度策略。目前很多集群管理系统采用了单体调度设计,比如Google Borg、Kubernetes 等。如下图所示,图中展示了一个典型的单体调度框架。

2023-12-28 09:34:46 957

原创 分布式技术之分布式非集中式结构

在非集中式结构中,服务的执行和数据的存储被分散到不同的服务器集群,服务器集群间通过消息传递进行通信和协调。在非集中式结构中,没有中央服务器和节点服务器之分,所有的服务器地位都是平等(对等)的,也就是我们常说的“众生平等”。这样一来,相比于集中式结构,非集中式结构就降低了某一个或者某一簇计算机集群的压力,在解决了单点瓶颈和单点故障问题的同时,还提升了系统的并发度,比较适合大规模集群的管理。

2023-12-27 09:31:04 820

原创 分布式技术之分布式集中式结构

集中式结构就是,由一台或多台服务器组成中央服务器,系统内的所有数据都存储在中央服务器中,系统内所有的业务也均先由中央服务器处理。多个节点服务器与中央服务器连接,并将自己的信息汇报给中央服务器,由中央服务器统一进行资源和任务调度:中央服务器根据这些信息,将任务下达给节点服务器;节点服务器执行任务,并将结果反馈给中央服务器。集中式结构最大的特点,就是部署结构简单。

2023-12-27 09:30:10 1037

原创 分布式核心技术之分布式锁

数据库对共享资源做了唯一性约束,如果有多个请求被同时提交到数据库的话,数据库会保证只有一个操作可以成功,操作成功的那个线程就获得了访问共享资源的锁,可以进行操作。虽然 ZooKeeper 实现的分布式锁,几乎能涵盖所有分布式锁的特性,且易于实现,但需要频繁地添加和删除节点,所以性能不如基于缓存实现的分布式锁。例如,用户 B 也想要买吹风机,但在他之前,用户 C 想看看吹风机的库存量。基于数据库实现分布式锁比较简单,绝招在于创建一张锁表,为申请者在锁表里建立一条记录,记录建立成功则获得锁,消除记录则释放锁。

2023-12-26 09:40:24 1250

原创 分布式核心技术之分布式事务

事务,其实是包含一系列操作的、一个有边界的工作序列,有明确的开始和结束标志,且要么被完全执行,要么完全失败,即 all or nothing。通常情况下,我们所说的事务指的都是本地事务,也就是在单机上的事务。而分布式事务,就是在分布式系统中运行的事务,由多个本地事务组合而成。在分布式场景下,对事务的处理操作可能来自不同的机器,甚至是来自不同的操作系统。要深入理解分布式事务,我们首先需要了解它的特征。

2023-12-26 09:39:43 1304

原创 分布式核心技术之分布式共识

假设,现在有 5 台服务器,分散在美国华盛顿、英国伦敦、法国巴黎、中国北京、中国上海,分别对应着用户{A,B,C,D,E}。现在,用户 A 给用户 B 转了 100 元。在传统方法中,我们通过银行进行转账并记录该笔交易。但分布式在线记账方法中,没有银行这样的一个集中方,而是由上述 5 台服务器来记录该笔交易。但是,这 5 台服务器均是有各自想法的个体,都可以自主操作或记录,那么如何保证记录的交易是一致的呢?这,就是分布式共识技术要解决的问题。

2023-12-24 15:37:22 937

原创 分布式核心技术之分布式选举

这是一个技术活儿,目前常见的选主方法有基于序号选举的算法( 比如,Bully 算法)、多数派算法(比如,Raft 算法、ZAB 算法)等。答案是,在这种情况下,无法选出主,必须重新投票选举。因此,多数派选主算法通常采用奇数节点。多数派选主算法的核心是少数服从多数,获得投票多的节点胜出。想象一下,如果现在采用偶数节点集群,当两个节点均获得一半投票时,到底应该选谁为主呢?这,也是大家通常看到 ZooKeeper、 etcd、Kubernetes 等开源软件选主均采用奇数节点的一个关键原因。

2023-12-24 15:36:47 784

原创 分布式技术之协调与同步

如果有程序使用完资源,则通知协调者,协调者从“排号”的队列里取出排在最前面的请求,并给它发送授权消息。在可靠性和性能有一定保障的情况下,比如中央服务器计算能力强、性能高、故障率低,或者中央服务器进行了主备备份,主故障后备可以立马升为主,且数据可恢复的情况下,集中式算法可以适用于比较广泛的应用场景。集中式算法的优点在于直观、简单、信息交互量少、易于实现,并且所有程序只需和协调者通信,程序之间无需通信。,也可以叫做中央服务器算法。因此,在使用集中式算法的时候,一定要选择性能好、可靠性高的服务器来运行协调者。

2023-12-18 09:48:00 42

原创 分布式技术之基础知识

分布式其实就是将相同或相关的程序运行在多台计算机上,从而实现特定目标的一种计算方式。

2023-12-18 09:45:51 127

原创 领域驱动设计:分布式架构关键设计10问

一体化分布式数据库主要由互联网大厂开发,具有超强的数据处理能力,大多需要云计算底座,实施成本和技术能力要求比较高。集中式数据库 + 数据库中间件方案,实施成本和技术能力要求适中,可满足中大型企业业务要求。第三种分库类库的方案可处理简单的业务场景,成本和技能要求相对较低。在选择数据库的时候,我们要考虑自身能力、成本以及业务需要,从而选择合适的方案。它是一种轻量级的数据库中间件方案,分库类库实际上是一个基础 JAR 包,与应用软件部署在一起,实现数据路由和数据归集。

2023-10-24 16:25:01 149

原创 领域驱动设计:微服务的设计原则和演进策略

1. 绞杀者策略2. 修缮者策略1. 新建系统2. 单体遗留系统1. 所有的领域都用 DDD2. 全部采用 DDD 战术设计方法3. 重战术设计而轻战略设计4. DDD 只适用于微服务1. 基于领域模型2. 基于业务需求变化频率3. 基于应用性能4. 基于组织架构和团队规模5. 基于安全边界6. 基于技术异构等因素你知道的越多,你不知道的越多。

2023-10-24 16:11:47 147

原创 领域驱动设计:基于DDD的微服务设计实例

微服务内的对象清单:在确定各领域对象的属性后,我们就可以设计各领域对象在代码模型中的代码对象(包括代码对象的包名、类名和方法名),建立领域对象与代码对象的一一映射关系了。领域层:领域服务有查询审批规则、修改请假流程信息服务以及根据审批规则查询审批人服务,分别位于请假和人员组织关系聚合。请假单实体有修改请假流程信息方法,审批规则值对象有查询审批规则方法。要完成从领域模型到微服务的落地,还需要进一步的分析和设计。在事件风暴基础上,我们进一步细化领域对象以及它们的关系,补充事件风暴可能遗漏的业务和技术细节。

2023-10-24 16:10:23 380 1

原创 领域驱动设计:从后端到前端

微前端和业务单元化的设计模式可以减轻企业级中台,前后端应用开发和集成的复杂度,真正实现前端融合和中台解耦。

2023-09-14 21:30:00 122

原创 领域驱动设计:微服务的服务和数据的协作关系

1. 服务的类型2. 服务的调用3. 服务的封装与组合4. 两种分层架构的服务依赖关系你知道的越多,你不知道的越多。

2023-09-14 20:30:00 151

原创 领域驱动设计:领域模型与代码模型的一致性

1. 设计实体2. 找出聚合根3. 设计值对象4. 设计领域事件5. 设计领域服务6. 设计仓储服务的封装和调用主要有以下几种方式:你知道的越多,你不知道的越多。

2023-09-13 21:00:00 138

原创 领域驱动设计:微服务的各种边界

通过微服务的各种边界,我们可以让业务能力高内聚、代码松耦合,且清晰的边界,可以快速实现微服务代码的拆分和组合,轻松实现微服务架构演进。但有一点一定要格外注意,边界清晰的微服务,不是大单体向小单体的演进。

2023-09-13 21:00:00 127

原创 领域驱动设计:DDD设计微服务代码模型

微服务目录结构代码模型总目录结构关于代码模型还需要强调两点内容你知道的越多,你不知道的越多。

2023-09-12 22:30:00 200 1

原创 领域驱动设计:事件风暴构建领域模型

事件风暴是一项团队活动,领域专家与项目团队通过头脑风暴的形式,罗列出领域中所有的领域事件,整合之后形成最终的领域事件集合,然后对每一个事件,标注出导致该事件的命令,再为每一个事件标注出命令发起方的角色。命令可以是用户发起,也可以是第三方系统调用或者定时器触发等,最后对事件进行分类,整理出实体、聚合、聚合根以及限界上下文。而事件风暴正是 DDD 战略设计中经常使用的一种方法,它可以快速分析和分解复杂的业务领域,完成领域建模。

2023-09-12 22:00:00 141

15856_eec3d8ce85-背包问题知识框架图.png

背包问题知识框架图。背包问题(Knapsack problem)是一种组合优化的NP完全问题。问题可以描述为:给定一组物品,每种物品都有自己的重量和价格,在限定的总重量内,我们如何选择,才能使得物品的总价格最高。问题的名称来源于如何选择最合适的物品放置于给定背包中。相似问题经常出现在商业、组合数学,计算复杂性理论、密码学和应用数学等领域中。也可以将背包问题描述为决定性问题,即在总重量不超过W的前提下,总价值是否能达到V?

2020-05-11

新型肺炎实战.zip

数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。数据分析是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。

2020-04-06

天池工业蒸汽.zip

数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。数据分析是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。

2020-04-06

少年的你评论数据分析.zip

数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。数据分析是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。

2020-04-06

金融反欺诈实战.zip

金融反欺诈实战。通过数据分析,锻炼自己的机器学习的能力和数据分析的能力。数据分析是指用适当的统计分析方法对收集来的大量数据进行分析,将它们加以汇总和理解并消化,以求最大化地开发数据的功能,发挥数据的作用。数据分析是为了提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。

2020-04-06

国庆档电影数据分析.zip

国庆档电影数据分析。国庆档首日票房达7.96亿元,达同档期最高纪录;10月1日-10月7日期间,中国电影市场累计票房产出为43.86亿元,同比增长130.36%,打破了2017年26.29亿元的国庆档票房纪录,成为中国电影产业化改革以来,票房最高的国庆档。此外2019年国庆档仅用三天时间,就打破了2018年七天的票房纪录,算入9月30日票房,票房达到50.52亿,助推2019年年度票房实现同比反超。

2020-04-06

git常用命令.txt

Git常用命令总结。我在学习Git的过程中,买过书,也在网上Google了一堆Git相关的文章和教程,只支离破碎地介绍Git的某几个命令,还有直接从Git手册粘贴帮助文档的,学完后能立刻上手的Git教程。

2020-04-06

Spring-AOP.zip

spring aop的具体实现与理论.AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合。

2020-04-06

mantisbt-2.24.0.tar.gz

Mantis是一个基于PHP技术的轻量级的开源缺陷跟踪系统,以Web操作的形式提供项目管理及缺陷跟踪服务。在功能上、实用性上足以满足中小型项目的管理及跟踪。更重要的是其开源,不需要负担任何费用。

2020-04-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除