主页
Fewave | Blog
Cancel

一篇文章了解Java虚拟机

一、概述 1、简要了解java的技术体系 Java程序设计语言 JVM Clas文件格式 JavaApi类库 2、Java的运行机制 Java编写的程序通过Java编译器编译成Java字节码(class文件),Java虚拟机载入字节码, 解释运行程序。 3、什么是Java虚拟机 Java虚拟机(Java Virtual Machine 简称JVM) 是运行所有...

Linux服务器的几个安全防护措施

前言 很多服务器不时地被黑客入侵。因此,我决定编写一个简短的教程,向您展示如何轻松地保护Linux服务器。 这并不是一个全面的安全指南。 然而,它可以帮助您阻止几乎90%的流行后端攻击,如蛮力登录尝试和DDoS。 准备 一台linux服务器 一台本地计算机 对命令行有一个基本的了解。 一、配置SSH Keys 要访问远程服务器,您必须使用密码登录或使用SSH密钥。 密码...

GO语言入门教程

本文翻译于Milap Neupane Blog的Learning Golang — from zero to hero 前言 Go是一种开源编程语言,它使构建简单、可靠和高效的软件变得容易 Go 语言被设计成一门应用于搭载 Web 服务器,存储集群或类似用途的巨型中央服务器的系统编程语言。 对于高性能分布式系统领域而言,Go 语言无疑比大多数其它语言有着更高的开发效率。它提供...

Spring注解大全

一、Spring Core系列 1、@Autowired @Autowired标记Spring将要解析和注入的依赖项。我们可以使用构造函数、setter或字段注入来使用这个注释。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 class Demo { Class1 clz1; Class2 clz2; @Autowired Class3...

消息队列简介(MQ)

一、什么是消息队列 消息队列是一种异步的服务间通信方式,适用于无服务器和微服务架构。消息在被处理和删除之前一直存储在队列上。每条消息仅可被一位用户处理一次。消息队列可被用于分离重量级处理、缓冲或批处理工作以及缓解高峰期工作负载。 二、队列的特点 先进先出 发布订阅 持久化 分布式 三、消息队列的优势 在现代云架构中,应用程序被分解为多个规模较小且更易于开发、部署和维护...

简单聊聊企业应用架构的演变

前言 从计算机诞生到现在其实也就短短几十年, 从最早的军事使用,到投入商业, 直至现在走入寻常百姓家中。用日新月异来形容毫不为过。 企业的服务框架, 也随着计算机的发展, 层层迭代, 由最早的单一型应用服务发展至现在满足于几亿甚至几十亿的人民的大型服务 框架的演进 一、垂直型服务 单一型应用 早期, 企业的对外提供的服务比较单一, 客户流量也相对不足。 因此将所有的模块,代码打包在...

Python使用Tor作为代理进行网页抓取

前言 为什么要用代理 在网络抓取的过程中,我们经常会遇见很多网站采取了防爬取技术,或者说因为自己采集网站信息的强度和采集速度太大,给对方服务器带去了太多的压力,所以你一直用同一个代理IP爬取这个网页,很有可能IP会被禁止访问网页,所以基本上做爬虫的都躲不过去IP的问题,需要很多的IP来实现自己IP地址的不停切换,达到正常抓取信息的目的。 常用解决办法 使用ip代理池, 使用代理池的代理...

常见排序算法详解

前言 作为程序员,时时刻刻都要与算法打交道,其中排序算法算是比较常见的一种。而在面试程序员岗位中, 不出意外,排序算法也是比较常见的考量之一。因此我们有必要了解和掌握各种常见排序算法。 这个篇文章记录了几种常见的排序算法,并各种排序算法极端情况的优劣想,供学习和参考。 介绍 对数据进行排序意味着以特定顺序排列数据,通常是在类似数组的数据结构中。您可以使用各种排序标准,常见的排序标准是...

23种设计模式之策略模式-告别else if

策略设计模式是一种行为设计模式,我们在运行时为同一任务从多个其他实现中选择特定的算法或任务实现。 重要的一点是,这些实现是可互换的——基于任务的实现可以在不影响应用程序工作流的情况下被选择。 介绍 策略模式包括从宿主类中删除一个算法,并将其放在单独的类中,以便在相同的编程上下文中可能存在不同的算法(即策略),这些算法可以在运行时选择。 策略模式允许客户端代码从一系列相关但不同的算法中...

常见的全局ID生成方案

在分布式系统架构中,经常都需要一个全局的ID生成器,来保证系统中某些业务场景中对于主键的要求,当前实现ID生成的方式还是挺多的。本文我们来谈谈常见的ID生成方式。 全局ID该有的特性 唯一性: 确保生成的ID为全网唯一 有序性: 确保ID对于某项业务来说是有序性递增的 时间戳: 可清楚知道ID生成的时间点 高可用性: 确保任何时间都能生成有效ID ...