服务器的选型

整理了一些服务器选型的知识,作为储备。 常见的云服务商 云服务商建立公共云、管理私有云或提供按需云计算服务,这些云计算服务,包括:基础架构即服务(IaaS)、平台即服务(PaaS)和软件即服务(SaaS)。 国内外常见服务商:1. 亚马逊AWS · 2. 微软Azure · 3. 谷歌云平台 · 4. 阿里云 · 5. 华为云 · 6. UCloud. 服务器要运行什么应用? 需要要根据服务器的用 … 继续阅读

线程状态

最近在排查一个多线程的问题,dump 内存的时候,发现很多线程状态的问题。虽然线程状态已经看了很多,但是还是需要重新梳理一下。多线程问题,没有小问题,需要基础知识牢固,概念清晰,才好入手。 Java线程的六种状态以及切换 1.初始(NEW):新创建了一个线程对象,但还没有调用start()方法。 2.运行(RUNNABLE):Java线程中将就绪(ready)和运行中(running)两种状态笼统 … 继续阅读

如何实现让网站或者应用允许中国IP访问服务器

查了一些资料,实现思路主要是捕获IP,然后再IP库里面查,是否属于某个国家,或者IP段。 也可以自行实现对白名单的支持。 Web端和手机App(对IP的限制) web 端限制实现 实现方法: nginx加入限制逻辑(GeoIP) 服务器IPTABLES 应用服务端判断(tomcat、nodejs、) 手机app的实现 nginx加入限制逻辑(GeoIP)(其实是在接入层做这件事情) 网关限制 接口 … 继续阅读

一个基于spring-cloud的全站构建案例

想法&实践 最近有把一个站点的构建过程记录下来的想法,于是把所需要的技术关键点全部都一一罗列出来,当做技术笔记。我在自己的私人代码库里面,做成了脚手架,方便自己。更重要的是,在这个梳理过程,让我对以前的一些系统设计有了新的体会。重新搭建的过程,其实是愉悦、流畅的。 技术栈 语言:java 框架:spring-cloud 组件:zuul,eureka,spring-cloud feign,s … 继续阅读

面向对象设计的六大原则

在网上看了一个技术博主的一篇文章,讨论的的是代码质量。博主指出,目前国内普遍,都缺乏方法论和抽象能力的积累。有所感,于是回头看,也重新整理面向对象设计的六大原则。 1 单一职责(Single Responsibility Principle) 这个原则顾名就可以思义,就是一个类应该只负责一个职责,术语叫:仅有一个引起其变化的原因。简单点说:一个类中应该是一组相关性很高的函数及数据的封装,个中含义请 … 继续阅读