自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

码农架构

专注于系统架构、高可用、高性能、高并发类技术分享

  • 博客(298)
  • 资源 (76)
  • 收藏
  • 关注

原创 微服务架构 | SpringBoot 元数据配置实践

Spring Boot jar 包含元数据文件,提供所有支持的配置属性的详细信息。该文件旨在让 IDE 开发者提供上下文相关的帮助和“代码完成”。总结本篇文章希望对从事相关工作的同学能够有所帮助或者启发。

2022-01-14 13:17:41 610

原创 码农架构 | Spring Boot 实现通用 Auth 认证的 4 种方式

文章介绍了 spring-boot 中实现通用 auth 的四种方式,包括 传统 AOP、拦截器、参数解析器和过滤器,并提供了对应的实例代码,最后简单总结了下他们的执行顺序。

2022-01-11 15:10:57 632 2

原创 微服务架构 | 如何让接口权限继续继承下去?

在访问系统某个或者某类接口后进行一系列权限校验,但在后续接口中我们想让访问权限一直授权下去改如何处理呢?总结本篇文章希望对从事相关工作的同学能够有所帮助或者启发。

2022-01-05 21:02:06 2386 2

原创 RandomAccessFile 解决多线程下载及断点续传

在针对文件处理当网络环境不好,出现上传失败的时候,可以对失败的 Part 进行独立的重试,而不需要重新上传其他的 Part;中途暂停之后,可以从上次上传完成的 Part 的位置继续上传。或者要上传到 OSS 的本地文件很大的时候,可以并行上传多个 Part 以加快上传;再或者面对一些文件比较大时,我们需要对大文件进行切割分批上传完后再合并处理。

2021-12-29 14:56:05 1765 1

原创 微服务架构 | 怎样解决超大附件分片上传?

当我们的文件特别大的时候,上传是不是需要很长的时间啊,这么长时间的长连接,如果网络波动了呢?中间网络断开了呢?在这么长时间的过程中如果出现不稳定的情况,本次上传的所有内容就全部失败了,又要重新上传。分片上传、断点续传,这两个名词对于做过或者熟悉文件上传的朋友来说应该不会陌生,总结本篇文章希望对从事相关工作的同学能够有所帮助或者启发。

2021-12-26 12:02:13 2967 2

原创 微服务架构 | 如何利用日志链路追踪程序执行的慢 SQL?

查看 SQL 的执行效率,不难想到使用 explain 分析慢查询,但是前提是你需要非常了解业务背景。否则很难精准定位到。

2021-12-22 10:50:33 666 3

原创 微服务架构 | 如何利用好日志链路追踪做性能分析?

做性能分析听到最多的歪理就是,服务做水平、垂直扩容、分表分库、读写分离、XX中间件、资源静态化等等但是归根到底这些方案都是为了尽可能减少对数据库的访问以及堆栈的释放,提高数据库IO的读写速度和程序的运行效率。

2021-12-14 13:57:54 2231 3

原创 微服务架构 | 服务之间跨域问题怎么解决?

导读:跨域资源共享(cors)可以放宽浏览器的同源策略,可以通过浏览器让不同的网站和不同的服务器之间通信。一、背景当前微服务拆分已经成为趋势,大部分公司都对其软件产品做微服务架构调整。对产品先进行业务、模块拆分,大部分也进行前后端分离的业务调整。服务拆分不能避免的问题那就是:请求跨域问题,针对跨域问题,先前专门做了资料整理 什么是跨域? 请求跨域会影响? 跨域资源共享(cors)到底解决了什么? 针对这些问题可以查看《SpringCloud 中跨域资源共享(..

2021-11-15 14:09:33 6651 3

原创 微服务架构 | Hystrix 熔断降级需要注意哪些点?

导读:Hystrix的资源隔离策略有两种,分别为:线程池和信号量。说到资源隔离,那我们在实战中需要注意哪些点呢?一、背景对于Hystrix熔断器的隔离策略分别为:线程池和信号量,前面一篇已经做了详细说明《微服务架构 | Hystrix的资源隔离策略该如何选择?》具体使用哪种策略,需根据业务场景综合评估。一般情况下,推荐使用线程池隔离。尽但是实战中对于Hystrix熔断器需要还需要注意哪些点呢?二、Hystrix 实战经验分享在线程池隔离策略下,线程池大小及超时时间的设置至关重要..

2021-11-04 10:24:27 513 1

原创 微服务架构 | Hystrix的资源隔离策略该如何选择?

导读:Hystrix中文含义是豪猪,因其背上长满棘刺,从而拥有了自我保护的能力。是Netlifx开源的一款容错框架,防雪崩利器,具备服务降级,服务熔断,依赖隔离,监控(Hystrix Dashboard)等功能。一、背景Hystrix是Netlifx开源的一款容错框架,防雪崩利器,具备服务降级,服务熔断,依赖隔离,监控(Hystrix Dashboard)等功能。尽管说Hystrix官方已不再维护,且有Alibaba Sentinel等新框架选择,但从组件成熟度和应用案例等方面看,其实还.

2021-10-09 10:49:08 905 1

原创 Spring Boot集成Swagger2构建强大的RESTful API文档

导读:Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。由于Spring Boot能够快速开发、便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API。而我们构建RESTful API的目的通常都是由于多终端的原因,这些终端会共用很多底层业务逻辑,因此我们会抽象出这样一层来同时服务于多个移动端或者Web前端。本文将介绍RESTful API的重.

2021-09-30 13:36:40 403

原创 SpringCloud 跨域资源共享(cors)到底解决了什么?

跨域资源共享(cors)可以放宽浏览器的同源策略,可以通过浏览器让不同的网站和不同的服务器之间通信。同源策略同源策略在浏览器安全中是一种非常重要的概念,大量的客户端脚本支持同源策略,比如JavaScript。同源策略允许运行在页面的脚本可以无限制的访问同一个网站(同源)中其他脚本的任何方法和属性。当不同网站页面(非同源)的脚本试图去互相访问的时候,大多数的方法和属性都是被禁止的。这个机制对于现代web应用是非常重要的,因为他们广泛的依赖http cookie来维护用户权限,服务器端会根.

2021-09-20 14:10:18 517

原创 微服务的架构下,如何根据业务抽象出适合自己系统的组件?

导读:基础SpringBoot/SpringCloud微服务的架构下,我们或多或少会根据业务抽象出适合自己系统的组件或SDK,来应对对内、对外的拓展。在SpringBoot/SpringCloud先前介绍了一些,如:@Conditional 来指定指定条件的时候才将某个 bean 加载到应用上下文中。 @FunctionalInterface 函数式接口申明 @JsonTypeInfo 在Java类继承的情况下如何实现父类及子类的JSON序列化与反序列化。等等其他的注解标识,极大简化了...

2021-09-01 14:14:35 626 2

原创 Spring Cloud中如何保证各个微服务之间调用的安全性?

导读:在微服务的架构下,系统会根据业务拆分为多个服务,各自负责单一的职责,在这样的架构下,我们需要确保各api的安全性,也就是说服务不是开放的,而是需要授权才可访问的,避免接口被不合法的请求所访问。但是在在微服务集群中服务之间暴力的接口,或者对于第三方开放的接口如果不做及安全和认证,后果可想而知。阅读下文之前思考几个问题:如何在restTemplate远程调用请求增加添加统一认证? 服务认证如何规范加密和解密? 远程调用统一什么协议比较合适?如下图,三个服务注册到同一个注册中心.

2021-08-19 15:53:43 6542 22

原创 ☕️【系统设计】如何设计出优雅且实用的 API 接口

记得最开始的时候在设计接口的时候规范还没有那么多,因为前后端还没分离。不管是前端还是后端都是一个人开发,为了追求"效率"。所谓的接口规范百花齐放,各有各自的一套。后来前后端分离,哪些为了追求"效率"而写的代码,重构起来的代码也是头疼。所以到了现在已经基本固定基本的机构体系,针对业务得不同还可以垂直拓展。如何构建这几个部分每个公司要求都不同,没有什么“一定是最好的”标准,但一个优秀的后端接口和一个糟糕的后端接口对比起来差异还是蛮大的,其中最重要的关键点就是看是否规范!在设计接口时,有很多因素要考虑

2021-08-02 11:14:01 884 1

原创 对象在内存中的内存布局是什么样的?

一个Java对象的存储结构。在Hotspot虚拟机中,对象在内存中的存储布局分为 3 块区域:对象头(Header)、实例数据(Instance Data)和对齐填充(Padding)Java 对象实例Hotspt 采用了 OOP-Klass 模型。 它是描述 java 对象实例的模型,可分为两部分:OOP (Ordinary Object Pointer)指的是普通对象指针,它包含 MarkWord 和Klass 指针。MarkWord 用于存储当前对象运行时的一些状态数据;Klass 指针则

2021-07-26 13:30:54 391

原创 稍等,我手机帮你远程调试下代码!

Teamviewer目前市面上远程办公软件各式各样,但是Teamviewer可能是陪伴我们最早的远程办公软件了,最开始实习想查看公司电脑的备份资料、代码等一些加密文件(公司统一配置电脑并且加密处理)。Teamviewer 确实陪伴了我一段很长的时间。到了后来用Teamviewer主要是为了解决线上问题,因为阿里云线上服务器设置的白名单只有公司那几个,所以!最痛苦的莫过于,明明知道问题出在那里!却没有无服务的登录权限。只能跑到公司去解决,后来同意安装了Teamviewer,周六日就开始慢慢解放,当然就

2021-07-19 10:45:05 2239 14

原创 架构上如何设计领域模型和数据模型?

依稀记得我第一次设计一个系统的时候,画了一堆UML(Unified Modeling Language,统一建模语言)图,面对Class Diagram(其实就是领域模型),纠结了好久,不知道如何落地。因为,如果按照这个类图去落数据库的话,看起来很奇怪,有点繁琐。可是不按照这个类图落库的话,又不知道这个类图画了有什么用。扪心自问,你有多久没有画数据模型和领域模型了?现在回想起来,我当时的纠结源自于我对领域模型和数据模型这两个重要概念的不清楚,先前看过DDD(领域驱动设计),里面一句话我觉得讲的很不错

2021-07-16 09:42:13 1346 3

原创 记一次线上OOM问题分析与解决,涨知识了!

导读:以前写过几篇篇关于线上服务器cpu 100%了,该如何排查问题?一些粉丝私信说能不能结合案例来讲解。大好的周日被钉钉消息疯狂@,然后钉钉电话就开始轰炸,同事开发的一程序爆出内存溢出,压测环境居然被通过了,然后就是大型救火现场。我将线上的dump文件和核心的错误日志整理出来,这是问题的复盘总结分享。查看日志看到这个报错java.lang.OutOfMemoryError我相信很多人都会先拷贝谷歌一下,但是真的没用必要!开发这么久或多或少见过不少这种错误。内存溢出~这里

2021-07-07 11:29:54 705

原创 线上服务器cpu 100%了,该如何排查问题?

cpu使用率是如何统计出来的?这里的cpu使用率与linux 命令top-H-p<pid> 的线程%CPU类似,一段采样间隔时间内,当前JVM里各个线程的增量cpu时间与采样间隔时间的比例。工作原理说明:首先第一次采样,获取所有线程的CPU时间(调用的是java.lang.management.ThreadMXBean#getThreadCpuTime()及sun.management.HotspotThreadMBean.getInternalThreadCpuTimes().

2021-06-16 16:12:39 1915 8

原创 阿里人都在使用的在线诊断工具—Arthas

导读:虽然已经有很多分析工具 jvisualvm,jstat,jmap,jstack,Memory Analyzer等。但可能不是大杂烩,或者线上无法分析等。所以看看arthas的功能,好用就用它了

2021-06-13 09:54:01 659 4

原创 阿里巴巴为什么不建议直接使用Async注解?

导读:对于异步方法调用,从Spring3开始提供了@Async注解,该注解可以被标在方法上,以便异步地调用该方法。调用者将在调用时立即返回,方法的实际执行将提交给Spring TaskExecutor的任务中,由指定的线程池中的线程执行。...

2021-06-08 16:25:59 358

原创 深入源码,CompletableFuture 简单与链式的区别?

导读:从 JDK 8 开始,在 Concurrent 包中提供了一个强大的异步编程工具 CompletableFuture。在 JDK8 之前,异步编程可以通过线程池和 Future 来实现,但功能还不够强大。CompletableFuture 的出现,使 Java 的异编程能力向前迈进了一大步。在探讨 CompletableFuture 的原理之前,先详细看一下 CompletableFuture 的用法,从这些用法中,可以看到相较之前的 Future 有哪些能力得到了提升。提交给 Complet.

2021-05-27 18:23:39 1317 8

原创 如何快速定位当前数据库消耗CPU最高的SQL语句?

这里用一个简单例子说明下,主要是了解如何定位的思路,具体看官网介绍:参考:https://www.percona.com/blog/2020/04/23/a-simple-approach-to-troubleshooting-high-cpu-in-mysql/主要意思是针对定位CPU的问题,Percona增加了对通过信息的TID列将processlist ID映射到OS线程ID的支持,而MySQL在5.7版本后在PERFORMANCE_SCHEMA.THREADS表加了一个THREAD_OS

2021-05-15 15:23:36 251

原创 ThreadLocal的Entry为什么要继承WeakReference?

导读:ThreadLocal的Entry为什么要继承WeakReference?弱引用GC的时候会回收?那么回收了,数据不会丢失吗?首先得看一眼WeakReference的代码,它继承自Reference,这里有个get()方法,代码如下:注意这一句:If this reference object has been cleared, either by the program or by the garbage collector, then this method r..

2021-05-14 10:48:22 1046 2

原创 Kafka 2.8.0 正式发布,增加了哪些新特性?

导读:目前 Kafka 已经定位为一个分布式流式处理平台,它以高吞吐、可持久化、可水平扩展、支持流数据处理等多种特性而被广泛使用。目前越来越多的开源分布式处理系统如 Cloudera、Storm、Spark、Flink 等都支持与 Kafka 集成。2021年4月19日,Kafka官方发布了2.8.0版本,包含了很多新特性!其中,我觉得最感兴趣的是提到的第一条特性-Kafka用自管理的Quorum代替ZooKeeper管理元数据。之前Kafka使用ZooKeeper来存储有关分区和代理的元数.

2021-05-02 15:41:55 3610 7

原创 如何规范你的Git commit?

导读:commit message应该如何写才更清晰明了?团队开发中有没有遇到过让人头疼的git commit?本文分享在git commit规范建设上的实践,规定了commit message的格式,并通过webhook在提交时进行监控,避免不规范的代码提交。背景Git每次提交代码都需要写commit message,否则就不允许提交。一般来说,commit message应该清晰明了,说明本次提交的目的,具体做了什么操作……但是在日常开发中,大家的commit message千奇百怪,中...

2021-04-23 20:42:03 739 8

原创 MySQL 表列数和行大小有哪些限制?

列数限制MySQL对每个表有4096列的硬限制,但是对于给定的表,有效最大值可能会更少。确切的列限制取决于几个因素:表的最大行大小限制了列的数量(可能还有大小),因为所有列的总长度不能超过该大小 个列的存储要求限制了给定最大行大小内的列数。某些数据类型的存储要求取决于存储引擎,存储格式和字符集等因素 存储引擎可能会施加其他限制表列计数的限制。例如, InnoDB每个表的限制为1017列 功能键部分被实现为隐藏的虚拟生成的存储列,因此表索引中的每个功能键部分都计入表的总列数限制。行大小限制

2021-04-20 16:39:42 3731

原创 Spring条件注解@Conditional,SpringBoot中组合条件你知道吗?

导读:当我们构建一个 Spring 应用的时候,有时我们想在满足指定条件的时候才将某个 bean 加载到应用上下文中, Spring 4提供了一个更通用的基于条件的Bean的创建方式,即使用@Conditional注解,我们可以通过 @Conditional 注解来实现这类操作。@Conditional 元注解源码Conditional 接口源码我们看到 @Conditional 注解接收的参数是 extends Condition 接口的泛型类,也就是说,我们要使用 @Condit.

2021-04-15 10:17:03 309

原创 BigDecimal一定不会丢失精度吗?

导读:我们基本已经形成了常识,需要用到金钱的地方要用BigDecimal而不是其他,而我们也都知道浮点型变量在进行计算的时候会出现丢失精度的问题。那么,你知道其实BigDecimal也会丢失精度吗?而使用BigDecimal的背后又有什么值得去探究的地方吗?今天,告诉你,知其然,也知其所以然。如下一段代码:输出:可以看到在Java中进行浮点数运算的时候,会出现丢失精度的问题。那么我们如果在进行商品价格计算的时候,就会出现问题。很有可能造成我们手中有0.06元,却无法购买..

2021-04-13 10:42:25 856 1

原创 MySQL什么时候才考虑分表分库?

前面写过一篇文章介绍分库分表会带来哪些棘手问题?但是如果在我们业务遇到瓶颈时候还是会采用分表分库的方案。1. 什么时候考虑切分?1.1 能不切分尽量不要切分并不是所有表都需要进行切分,主要还是看数据的增长速度。切分后会在某种程度上提升业务的复杂度,数据库除了承载数据的存储和查询外,协助业务更好的实现需求也是其重要工作之一。不到万不得已不用轻易使用分库分表这个大招,避免"过度设计"和"过早优化"。分库分表之前,不要为分而分,先尽力去做力所能及的事情,例如:升级硬件、升级网络、读写分离、索引优化

2021-03-19 13:27:19 1299 2

转载 重磅:Java 16 正式发布了!

2020 年是值得纪念的一年,这一年中我们庆祝了 Java 的 25 岁生日。经过二十多年的持续创新,Java 一直在: 通过适应不断变化的技术格局来保持灵活性,同时维持平台独立性。 通过保持向后兼容性来保证可靠性。 在不牺牲安全性的前提下加速创新来保持优势。 Java 凭借自身不断提高平台性能、稳定性和安全性的能力,一直是开发人员中最流行的编程语言。IDC 的最新报告“Java Turns 25”显示,超过 900 万名开发人员(全球专职开发人员中的 69%)在使用 Java

2021-03-18 10:18:42 1045 2

原创 MySQL要分表分库怎么进行数据切分?

数据库分布式核心内容无非就是数据切分(Sharding)以及切分后对数据的定位、整合。数据切分就是将数据分散存储到多个数据库中,使得单一数据库中的数据量变小,通过扩充主机的数量缓解单一数据库的性能问题,从而达到提升数据库操作性能的目的。数据切分根据其切分类型,可以分为两种方式:垂直(纵向)切分和水平(横向)切分。1.垂直(纵向)切分垂直切分常见有垂直分库和垂直分表两种。1.1 垂直分库就是根据业务耦合性,将关联度低的不同表存储在不同的数据库。做法与大系统拆分为多个小系统类似,按业务分类进行.

2021-03-16 16:01:42 357 2

原创 为什么ConcurrentHashMap的读操作不需要加锁?

ConcurrentHashmap在jdk1.7中是采用Segment + HashEntry + ReentrantLock的方式进行实现的,而1.8中放弃了Segment臃肿的设计,取而代之的是采用Node + CAS + Synchronized来保证并发安全进行实现 JDK1.8的实现降低锁的粒度,JDK1.7版本锁的粒度是基于Segment的,包含多个HashEntry,而JDK1.8锁的粒度就是HashEntry(首节点) JDK1.8版本的数据结构变得更加简单,使得操作也更加清

2021-03-11 13:34:54 435

原创 mac下chrome快捷键大全

1. 标签页和窗口快捷键⌘-N 打开新窗口。 ⌘-T 打开新标签页。 ⌘-Shift-N 在隐身模式下打开新窗口。 按⌘-O,然后选择文件。 在 Chrome 浏览器中打开计算机中的文件。 按住⌘的同时点击链接。或用鼠标中键(或鼠标滚轮)点击链接。 从后台在新标签页中打开链接。 按住⌘-Shift的同时点击链接。或按住Shift键的同时用鼠标中键(或鼠标滚轮)点击链接。 在新标签页中打开链接并切换到刚打开的标签页。 按住Shif...

2021-03-10 13:34:39 1442

原创 Kafka 架构中 ZooKeeper 以怎样的形式存在?

在基于 Kafka 的分布式消息队列中,ZooKeeper 的作用有 Broker 注册、Topic 注册、Producer 和 Consumer 负载均衡、维护 Partition 与 Consumer 的关系、记录消息消费的进度以及 Consumer 注册等。1.Broker 在 ZooKeeper 中的注册为了便于大家理解,我首先解释下“注册”一词。ZooKeeper 是一个共享配置中心,我们可以将一些信息存放入其中,比如 Broker 信息,本质上就是存放一个文件目录。这个配置中心是共享的,

2021-03-08 16:38:52 1695 3

原创 Kafka 中所谓的 ‘零拷贝’ 技术到底是什么?

文章收录地址:Java-Bang专注于系统架构、高可用、高性能、高并发类技术分享除了消息顺序追加、页缓存等技术,Kafka 还使用零拷贝技术来进一步提升性能。所谓的零拷贝是指将数据直接从磁盘文件复制到网卡设备中,而不需要经由应用程序之手。零拷贝大大提高了应用程序的性能,减少了内核和用户模式之间的上下文切换。对 Linux 操作系统而言,零拷贝技术依赖于底层的 sendfile() 方法实现。对应于 Java 语言,FileChannal.transferTo() 方法的底层实现就是 sendfi.

2021-02-26 17:36:29 3118 4

原创 Kafka 是怎么存储的?为什么速度那么快?

文章收录地址:Java-Bang专注于系统架构、高可用、高性能、高并发类技术分享Kafka 依赖于文件系统(更底层地来说就是磁盘)来存储和缓存消息。在我们的印象中,对于各个存储介质的速度认知大体同下图所示的相同,层级越高代表速度越快。很显然,磁盘处于一个比较尴尬的位置,这不禁让我们怀疑 Kafka 采用这种持久化形式能否提供有竞争力的性能。在传统的消息中间件 RabbitMQ 中,就使用内存作为默认的存储介质,而磁盘作为备选介质,以此实现高吞吐和低延迟的特性。然而,事实上磁盘可以比我们预想的要快.

2021-02-24 13:37:20 1285 7

原创 深入理解Java虚拟机是怎么实现synchronized的?

文章收录地址:Java-Bang专注于系统架构、高可用、高性能、高并发类技术分享在 Java 程序中,我们可以利用 synchronized 关键字来对程序进行加锁。它既可以用来声明一个 synchronized 代码块,也可以直接标记静态方法或者实例方法。当声明 synchronized 代码块时,编译而成的字节码将包含 monitorenter 和 monitorexit 指令。这两种指令均会消耗操作数栈上的一个引用类型的元素(也就是 synchronized 关键字括号里的引用),作为.

2021-02-23 09:55:36 225 2

原创 聊一聊Java垃圾回收与卡表技术

文章收录地址:Java-Bang专注于系统架构、高可用、高性能、高并发类技术分享在读博士的时候,我曾经写过一个统计 Java 对象生命周期的动态分析,并且用它来跑了一些基准测试。其中一些程序的结果,恰好验证了许多研究人员的假设,即大部分的 Java 对象只存活一小段时间,而存活下来的小部分 Java 对象则会存活很长一段时间。(pmd 中 Java 对象生命周期的直方图,红色的表示被逃逸分析优化掉的对象)之所以要提到这个假设,是因为它造就了 Java 虚拟机的分代回收思想。简单来说,就.

2021-02-21 12:47:23 1292 4

快速入门Git.zip

快速入门Git、Git 基础操作与环境部署问题~

2020-08-22

Spring Framework总览(Overview).pdf

Spring Framework 框架学习,源码阅读配套使用,事半功倍! 适用与Java 开发学习者使用

2020-08-19

史上最全50道Redis面试题.pdf

redis 精选面试题,「码农架构」订阅整理! 包含基础理论与实战问答,配置运维等知识点!Java后端必备资源

2020-08-18

微信小程序源码.zip

微信小程序源码包含 「课程预约、蒙台梭利幼教、托福资料(完整带Java后台)、校内网小程序、悦读神器、云文档、Bookshare 借书小程序」 更多资料分享请关注公众号:码农架构 (回复资料即可获取)

2020-08-13

iOpen-ITBlog.rar

基于python3.7和django2.1打造个人专用简约版博客;功能包含基础用户管理,文章管理、标签管理、互动管理

2019-05-30

mysql-5.1.71-winx64.msi

mysql-5.1.71-winx64.msi Window 安装包 mysql-5.1.71-winx64.msi

2018-04-03

ELK(ElasticSearch, Logstash, Kibana)

ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台资源 ELK(ElasticSearch, Logstash, Kibana)平台恰好可以同时实现日志收集、日志搜索和日志分析的功能

2018-01-10

kafka_2.10-0.8.2.0

kafka_2.10-0.8.2.0 亲测可用,本人也在用Kafka做 ELK(elasticsearch+logstash+kibana)实现Java分布式系统日志分析架构

2018-01-02

vue-element

vue2.0+elementUI构建单页面后台管理平台

2017-08-09

LiteIDE Window

Go语言开发工具liteide 最新版20.1 for windows 本人现在用着版本,如有问题交流

2016-06-16

go1.2.1.windows-amd64.msi

go1.2.1.windows-amd64.msi 我现在就用这个版本 有问题可加群讨论学习

2016-06-16

Advanced Rest Client 4.0

Advanced REST Client是 Chrome 浏览器下的一个插件,通过它可以发送 http、https、WebSocket 请求

2016-06-13

Advanced REST Client

Googel 浏览器 模拟发送请求工具--Advanced REST Client

2016-06-13

Java源码 SpringMVC Mybatis Shiro Bootstrap Rest Webservice

项目Maven构建,真实大型互联网架构,做到高并发,大数据处理,整个项目使用定制化服务思想,提供模块化、服务化、原子化的方案,将功能模块进行拆分,可以公用到所有的项目中。架构采用分布式部署架构,所有模块进行拆分,使项目做到绝对解耦,稳定压倒一切~~ 持续集成: 1. 我的待办工作流服务(提供Webservice服务) 2. 我的待办工作流集成JMS消息服务(支持高并发,可支持成千上万系统集成) 3. 我的任务提供Rest服务,完成日常的工作管理,通过定时调度平台,动态生成我的任务、循环周期任务、定时邮催提醒完成任务等 4. 文件上传、多线程下载服务化、发送邮件、短信服务化、部门信息服务化、产品信息服务化、信息发布服务化、我的订阅服务化、我的任务服务化、公共链接、我的收藏服务化等 系统模块: 1. 用户管理: 用户信息管理(添加、删除、修改、用户授权、用户栏目管理、查询等) 用户组管理(添加、删除、修改、用户组栏目授权,栏目授权、查询、用户组人员添加查询等) 用户角色管理(添加、删除、修改、用户角色授权、用户角色栏目信息查询设置等) 2. 文章管理: 栏目管理:查询无限极栏目树、创建无限极栏目树分类(导航栏目、图片列表栏目、文章列表栏目、文章内容栏目等)、删除、修改栏目信息。 文章管理:创建、删除、修改文章,多维度文章查询,包括已发布、未发布、所有文章等。文章富文本编辑器、文章多文件上传、文章状态控制等。 3. 系统设置: 数据字典管理:支持中、英文信息,支持无限级别分类配置,动态控制是否可用等。 部门信息管理:支持中、英文无限级别部门信息增加,删除,修改操作,部门列表、树心查询等。 日志管理:系统日志列表查询、在线查看、在线下载等 路线管理:集成百度地图API,提供线路查询管理功能 Druid Monitor(监控):集成阿里巴巴连接池,提供在线连接池监控程序,包括:数据源、SQL监控、URL监控、Session监控、Spring监控等 网站信息管理:通过系统配置文件进行网站内容操作,包括邮件服务器配置、公司基本信息配置等。 4. 集成REST服务,可以用作独立服务平台(提供大量实例及测试平台,包括:文件上传下载、邮件短信发送、部门、产品、公共连接、我的收藏、我的任务、信息发布等) 5. 集成Quartz调度,可以用作定时调度平台(动态配置调度类、调度时间,使程序自动执行某些业务) 6. Lucene搜索引擎,可以将文件资料索引化,支持文件内容搜索、关键字搜索、高亮关键字等,使信息在毫秒内提取查询出来 7. 用户设置功能:包括修改用户信息,修改密码、发送消息,修改个人图片,查看角色、查看用户组,管理员修改角色、用户、用户组等。 8. 集成Webservice平台,包括jaxws服务、CXF框架,配置双加密的权限认证。使服务集成更加安全。 9. Bootstrap html5提供了两套前台开环境,包括CMS和电子商务网站,使您的开发更加的简洁。 技术点: 1. Springmvc + Mybatis集成、SpringSecurity权限控制、Spring AOP事务处理。 2. Wink Rest服务、Webservice服务:jaxws、CXF等 3. IO 流上传下载文件,多线程操作 4. 发送邮件,配置邮件服务器,发基于html、纯文本格式的邮件(可以免费赠送网络爬虫,使其群发邮件,做到广告推送等) 5. MD5加密(登陆密码校验加密等),用户统一Session、Cookie管理,统一验证码校验等。 6. 数据库连接池统一配置 7. Quartz定时调度任务集成(直接通过配置即可) 8. Httpclient破解验证码,登陆联通充值平台 9. 汉字、英文拆分、可以用作文档关键字搜索等。 10. Base64图片处理,支持PC,Android,IOS 11. Service Socket 、Client Socket 通信技术(已经做过GPRS数据获取,并用到了项目中) 12. 提供大量工具类,可以直接使用 13. Maven项目构建,您可以直接做架构,可以提升自己的学习能力,使您成为真正的架构师。 版本支持: 支持版本: jdk 1.6、1.7、1.8 Web容器: Tomcat 6、7、 8 数据库: mysql

2016-06-07

Linux系统 安装Nginx 所需包

Linux系统 安装Nginx 所需包 nginx-1.8.0.tar.gz openssl-1.0.2a.tar.gz pcre-8.37.tar.gz zlib-1.2.8.tar.gz

2016-01-20

ExtJS5.0.0完整版

ExtJS5.0.0完整版 测试Demo

2015-04-13

Struts2 0+Spring3+Hibernate3 SSH Demo

Struts2 0+Spring3+Hibernate3 SSH Demo

2015-03-31

SpringMVC+Spring+Mybatis

SpringMVC+Spring+Mybatis Demo下载

2015-03-30

( SpringMVC+Spring+Mybatis~lib

SpringMVC+Spring+Mybatis所需要的全部夹包!

2015-03-30

网络拓扑图.

拓扑图用于显示流程图,以及关系图的管理工具! 网络拓扑图后期修改源码

2015-03-23

阿里巴巴-Java开发手册(嵩山版) .pdf

Java作为众多开发者的必修课之一,在编程语言榜单上占据着重要地位,更是从事云计算、大数据等开发工作必备技能之一,了解Java编程规范当然是重中之重,本次社区分享了Java开发手册+成神指南+实战演练,带你学习大厂如何用Java!

2021-03-11

阿里巴巴-Java 开发手册(泰山版).pdf

Java作为众多开发者的必修课之一,在编程语言榜单上占据着重要地位,更是从事云计算、大数据等开发工作必备技能之一,了解Java编程规范当然是重中之重,本次社区分享了Java开发手册+成神指南+实战演练,带你学习大厂如何用Java!

2021-03-11

Java 基础核心总结.pdf

适合初学者

2021-03-09

Java 开发手册-华山版(阿里).pdf

《Java 开发手册》是阿里巴巴集团技术团队的集体智慧结晶和经验总结,经历了多次大规模 一线实战的检验及不断完善,公开到业界后,众多社区开发者踊跃参与,共同打磨完善,系统化地 整理成册。现代软件行业的高速发展对开发者的综合素质要求越来越高,因为不仅是编程知识点, 其它维度的知识点也会影响到软件的最终交付质量。比如:数据库的表结构和索引设计缺陷可能带 来软件上的架构缺陷或性能风险;工程结构混乱导致后续维护艰难;没有鉴权的漏洞代码易被黑客 攻击等等。所以本手册以 Java 开发者为中心视角,划分为编程规约、异常日志、单元测试、安全规 约、MySQL 数据库、工程结构、设计规约七个维度,再根据内容特征,细分成若干二级子目录。 另外,依据约束力强弱及故障敏感性,规约依次分为强制、推荐、参考三大类。在延伸信息中, “说明”对规约做了适当扩展和解释;“正例”提倡什么样的编码和实现方式;“反例”说明需要 提防的雷区,以及真实的错误案例。

2021-03-09

ZooKeeper 面试题(30道ATM精选问题).pdf

zookeeper 面试题精选(30道ATM面试题),码农架构技术号独家整理,更对内容可关注技术号获取~

2020-11-10

IntelliJ Idea for Mac 默认快捷键布局中文版

IntelliJ Idea for Mac 默认快捷键布局中文版,常用快捷指南!可以快速查找IDEA 对应的快捷!

2020-11-03

mac Docker 安装包.zip

mac 系统 docker 安装包,官网下载慢的同学可以在此下载,安装完后使用加速器可以提升获取Docker官方镜像的速度

2020-10-14

Java并发体系.pdf

蚂蚁金服技术专家整理,Java并发体系-高清版思维导图! 包含日常开发以及集群应用并发技术思维导图~

2020-09-11

Git 的基础使用-高清版.pdf

蚂蚁金服技术专家整理,Git 的基础使用-高清版,包含Git 日常操作以及使用规则配置学习路线指导~

2020-09-11

docker 学习思维导图-高清版本

蚂蚁金服技术专家整理,docker 学习思维导图-高清版本!

2020-09-11

innodb_force_recovery.zip

如果MySQL的 InnoDB 文件的损坏,该如何手动恢复? 手工案例数据库文件!码农架构读者学习使用~

2020-09-06

微信小程序源码-合集6.rar

微信小程序源码,包含:图片展示、外卖点餐、小工具类、小游戏类、演绎博览、新闻资讯、医疗保健、艺术生活等源码。

2020-09-04

微信小程序源码-合集5.rar

微信小程序源码,包含:豆瓣、微信、论坛、停车、房贷计算、股票、蜗牛生活、物品回收、学车预约、住房装修、斗鱼直播、水利、快拍、同城等源码。

2020-09-04

微信小程序源码-合集4.rar

微信小程序源码,包含:3C手机商城、kindle图书商城、大宅小屋拼团、球鞋商城、扫码购物、一元夺宝、喜茶店铺、京东首页、京东白条、小米商城等35个商城类源码。

2020-09-04

微信小程序源码-合集3.rar

微信小程序源码,包含:汤总便利、茶铺门店、滴滴拼车、同城拼车(带后台)、企业OA系统、房地产公司展示、华云智慧园区、汽车维修、评测、停车等源码。

2020-09-04

微信小程序源码-合集2.rar

包含:Bookshare 借书小程序、课程预约、蒙台梭利幼教、托福资料(完整带Java后台)、校内网小程序、悦读神器、云文档等源码!

2020-09-04

微信小程序源码-合集1.rar

【微信小程序-源码合集】该合集主要整理 包含交友互动、节日祝福、金融行业、旅游行业、论坛系列、美容行业!

2020-09-04

微信小程序源码-合集2.zip

包含:Bookshare 借书小程序、课程预约、蒙台梭利幼教、托福资料(完整带Java后台)、校内网小程序、悦读神器、云文档等源码

2020-08-31

微信小程序源码-合集1.zip

【微信小程序-源码合集】该合集主要整理 包含交友互动、节日祝福、金融行业、旅游行业、论坛系列、美容行业

2020-08-30

算法图解(高清版).rar

前言 致谢 关于本书 第1 章 算法简介 1 1.1 引言 1 1.1.1 性能方面 1 1.1.2 问题解决技巧 2 1.2 二分查找 2 1.2.1 更佳的查找方式 4 1.2.2 运行时间 8 1.3 大O 表示法 8 1.3.1 算法的运行时间以不同的速度增加 9 1.3.2 理解不同的大O运行时间 10 1.3.3 大O 表示法指出了最糟情况下的运行时间 12 1.3.4 一些常见的大O运行时间 12 1.3.5 旅行商 13 1.4 小结 15 第2 章 选择排序 16 2.1 内存的工作原理 16 2.2 数组和链表 18 2.2.1 链表 19 2.2.2 数组 20 2.2.3 术语 21 2.2 .4 在中间插入 22 2.2.5 删除 23 2.3 选择排序 25 2.4 小结 28 第3 章 递归 29 3.1 递归 29 3.2 基线条件和递归条件 32 3.3 栈 33 3.3.1 调用栈 34 3.3.2 递归调用栈 36 3.4 小结 40 第4 章 快速排序 41 4.1 分而治之 41 4.2 快速排序 47 4.3 再谈大O表示法 52 4.3.1 比较合并排序和快速排序 53 4.3.2 平均情况和最糟情况 54 4.4 小结 57 第5 章 散列表 58 5.1 散列函数 60 5.2 应用案例 63 5.2.1 将散列表用于查找 63 5.2.2 防止重复 64 5.2.3 将散列表用作缓存 66 5.2.4 小结 68 5.3 冲突 69 5.4 性能 71 5.4.1 填装因子 72 5.4.2 良好的散列函数 74 5.5 小结 75 第6 章 广度优先搜索 76 6.1 图简介 77 6.2 图是什么 79 6.3 广度优先搜索 79 6.3.1 查找最短路径 82 6.3.2 队列 83 6.4 实现图 84 6.5 实现算法 86 6.6 小结 93 第7 章 狄克斯特拉算法 94 7.1 使用狄克斯特拉算法 95 7.2 术语 98 7.3 换钢琴 100 7.4 负权边 105 7.5 实现 108 7.6 小结 116 第8 章 贪婪算法 117 8.1 教室调度问题 117 8.2 背包问题 119 8.3 集合覆盖问题 121 8.4 NP 完全问题 127 8.4.1 旅行商问题详解 127 8.4.2 如何识别NP 完全问题 131 8.5 小结 133 第9 章 动态规划 134 9.1 背包问题 134 9.1.1 简单算法 135 9.1.2 动态规划 136 9.2 背包问题FAQ 143 9.2.1 再增加一件商品将如何呢 143 9.2.2 行的排列顺序发生变化时结果将如何 145 9.2.3 可以逐列而不是逐行填充网格吗 146 9.2.4 增加一件更小的商品将如何呢 146 9.2.5 可以偷商品的一部分吗 146 9.2.6 旅游行程最优化 147 9.2.7 处理相互依赖的情况 148 9.2.8 计算最终的解时会涉及两个以上的子背包吗 148 9.2.9 最优解可能导致背包没装满吗 149 9.3 最长公共子串 149 9.3.1 绘制网格 150 9.3.2 填充网格 151 9.3.3 揭晓答案 152 9.3.4 最长公共子序列 153 9.3.5 最长公共子序列之解决方案 154 9.4 小结 155 第10 章 K 最近邻算法 156 10.1 橙子还是柚子 156 10.2 创建推荐系统 158 10.2.1 特征抽取 159 10.2.2 回归 162 10.2.3 挑选合适的特征 164 10.3 机器学习简介 165 10.3.1 OCR 165 10.3.2 创建垃圾邮件过滤器 166 10.3.3 预测股票市场 167 10.4 小结 167 第11 章 接下来如何做 168 11.1 树 168 11.2 反向索引 171 11.3 傅里叶变换 171 11.4 并行算法 172 11.5 MapReduce 173 11.5.1 分布式算法为何很有用 173 11.5.2 映射函数 173 11.5.3 归并函数 174 11.6 布隆过滤器和HyperLogLog 174 11.6.1 布隆过滤器 175 11.6.2 HyperLogLog 176 11.7 SHA 算法 176 11.7.1 比较文件 177 11.7.2 检查密码 178 11.8 局部敏感的散列算法 178 11.9 Diffie-Hellman 密钥交换 179 11.10 线性规划 180 11.11 结语 180 练习答案 181

2019-07-05

空空如也

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

TA关注的人

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