自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(31)
  • 资源 (1)
  • 收藏
  • 关注

原创 2、firewalld防火墙

iptables是自2.4内核以来,linux自带的防火墙软件。但在centos7里,又出现了一个叫firewalld的防火墙软件,它和iptables一样都是通过内核的netfilter来实现的。也就是说iptables和firewalld都是用于维护规则,只不过使用方式有所不同。在centos7里iptables,firewalld都可以使用,但不要用混乱了

2024-04-01 15:05:42 663

原创 1、iptables防火墙

防火墙作为一种访问控制设备, 常常安装在内部网络和外部网络的边际上。主要用于保护内部网络的信息安全。

2024-04-01 14:52:30 781

原创 10、设计模式

需求:设计一个咖啡店点餐系统。设计一个咖啡类(Coffee),并定义其两个子类(美式咖啡【AmericanCoffee】和拿铁咖啡【LatteCoffee】);再设计一个咖啡店类(CoffeeStore),咖啡店具有点咖啡的功能。具体类的设计如下:1.类图中的符号+:表示public-:表示private#:表示protected2.泛化关系(继承)用带空心三角箭头的实线来表示3.依赖关系使用带箭头的虚线来表示//添加配料。

2024-03-14 20:00:09 344

原创 9、JVM相关面试题

难易程度:☆☆☆出现频率:☆☆☆☆程序计数器:线程私有的,内部保存的字节码的行号。用于记录正在执行的字节码指令的地址。javap -verbose xx.class 打印堆栈大小,局部变量的数量和方法的参数。​ java虚拟机对于多线程是通过线程轮流切换并且分配线程执行时间。在任何的一个时间点上,一个处理器只会处理执行一个线程,如果当前被执行的这个线程它所分配的执行时间用完了【挂起】。处理器会切换到另外的一个线程上来进行执行。

2024-03-14 19:59:37 326

原创 8、多线程相关面试题

CAS的全称是: Compare And Swap(比较再交换),它体现的一种乐观锁的思想,在无锁情况下保证线程操作共享数据的原子性。在JUC( java.util.concurrent )包下实现的很多类都用到了CAS操作AbstractQueuedSynchronizer(AQS框架)AtomicXXX类例子:我们还是基于刚才学习过的JMM内存模型进行说明线程1与线程2都从主内存中获取变量int a = 100,同时放到各个线程的工作内存中。

2024-03-14 19:58:32 360

原创 7、Java集合相关面试题

数组(Array)是一种用连续的内存空间存储相同数据类型数据的线性数据结构。我们定义了这么一个数组之后,在内存的表示是这样的:现在假如,我们通过arrar[1],想要获得下标为1这个元素,但是现在栈内存中指向的堆内存数组的首地址,它是如何获取下标为1这个数据的?二叉树,顾名思义,每个节点最多有两个“叉”,也就是两个子节点,分别是左子节点和右子节点。不过,二叉树并不要求每个节点都有两个子节点,有的节点只有左子节点,有的节点只有右子节点。二叉树每个节点的左子树和右子树也分别满足二叉树的定义。

2024-03-14 19:57:51 347

原创 6、消息中间件面试题

如果有这样的需求的话,我们是可以解决的,把消息都存储同一个分区下就行了,有两种方式都可以进行设置,第一个是发送消息时指定分区号,第二个是发送消息时按照相同的业务设置相同的key,因为默认情况下分区也是通过key的hashcode值来选择分区的,hash值如果一样的话,分区肯定也是一样的。如果已经存在这个数据了,就说明消息重复消费了,我们就不需要再消费了。嗯,这个我们还真遇到过,是这样的,我们当时消费者是设置了自动确认机制,当服务还没来得及给MQ确认的时候,服务宕机了,导致服务重启之后,又消费了一次消息。

2024-03-14 19:51:43 358

原创 5、微服务面试题

我当时做的xx项目,采用就是微服务的架构,因为xx因为,应该会有突发流量,最大QPS可以达到2000,但是服务支撑不住,我们项目都通过压测最多可以支撑1200QPS。我们当时采用的nginx限流操作,nginx使用的漏桶算法来实现过滤,让请求以固定的速率处理请求,可以应对突发流量,我们控制的速率是按照ip进行限流,限制的流量是每秒20。服务雪崩是指一个服务失败,导致整条链路的服务都失败的情形,一般我们在项目解决的话就是两种方案,第一个是服务降级,第二个是服务熔断,如果流量太大的话,可以考虑限流。

2024-03-14 19:50:36 331

原创 3、框架篇面试题

第四,B需要注入A,通过三级缓存中获取ObjectFactory来生成一个A的对象同时存入二级缓存,这个是有两种情况,一个是可能是A的普通对象,另外一个是A的代理对象,都可以让ObjectFactory来生产对应的对象,这也是三级缓存的关键。主要思路是这样的,使用aop中的环绕通知+切点表达式,这个表达式就是要找到要记录日志的方法,然后通过环绕通知的参数获取请求方法的参数,比如类信息、方法信息、注解、请求方式等,获取到这些参数以后,保存到数据库。最浅显的解决办法就是将多态bean的作用由“

2024-03-14 19:48:56 371

原创 2、MySQL面试题

所以,我们一般使用的都是mysql默认的隔离级别:可重复读。**候选人:**如果一条sql执行很慢的话,我们通常会使用mysql自动的执行计划explain来去查看这条sql的执行情况,比如在这里面可以通过key和key_len检查是否命中了索引,如果本身已经添加了索引,也可以判断索引是否有失效的情况,第二个,可以通过type字段查看sql是否有进一步的优化空间,是否存在全索引扫描或全盘扫描,第三个可以通过extra建议来判断,是否出现了回表的情况,如果出现了,可以尝试添加索引或修改返回字段来修复。

2024-03-14 19:48:21 345

原创 day08-智能调度之运输任务

通过前面的学习,已经可以将相同转运节点的运单合并,合并之后就需要进行调度计算,按照车辆的运力生成运输任务,以及司机的作业单,这样的话就可以进入到司机与车辆的运输环节了。在这里一定要注意,注册的这个ip地址与101机器是否能通信,就上面的情况,显然是不能通信的,所以需要需要在配置文件中指定注册的ip地址。另外,生成运输任务的消息已经发出了,只是我们还没有监听处理消息,在后面我们将实现对该消息的处理,就可以生成运输任务了。需要注意的是,一个运输任务中包含了多个运单,就是一辆车拉了一车的快件,是一对多的关系。

2024-03-14 19:38:44 922

原创 day09-智能调度之作业范围

课程安排MongoDB快速入门Spring Data MongoDB入门分析作业范围功能需求实现机构与快递员的作业范围1、背景说明通过前面的学习,智能调度系统已经可以生成了车辆运输任务以及司机作业单,接下来要做的事情就是要生成快递员的取派件任务,想一下,用户下单寄件的订单,哪个快递员为其服务呢?所以我们必须通过用户的寄件地址找到对应服务范围的快递员,为快递员分配取件任务,快递员上门取件,同样,派件是类似的到道理。所以,需要设定每个快递员或机构的作业范围,而范围是一组经纬度数据,如果存储到m

2024-03-14 19:33:55 322

原创 day10-智能调度之取派件调度

*** 新增取派件任务* @param taskPickupDispatch 取派件任务信息* @return 取派件任务信息此方法的实现,调用自定义Mapper中的SQL实现。

2024-03-14 19:24:10 364

原创 day13_14 项目分组实战

通过前面课程的学习,我们已经掌握了神领物流项目相关业务的开发,也参与了核心调度中心的开发,对于项目有了更深的理解,在此阶段中,我们将基于神领物流项目本身的基础之上扩展新的功能,这些新的功能将由你来完成。加油~

2024-03-14 19:23:24 394

原创 day12-分布式日志与链路追踪

GrayLog是一个轻量型的分布式日志管理平台,一个开源的日志聚合、分析、审计、展示和预警工具。在功能上来说,和 ELK类似,但又比 ELK要简单轻量许多。依靠着更加简洁,高效,部署使用简单的优势很快受到许多公司的青睐。其基本框架如图:微服务中的GrayLog客户端发送日志到GrayLog服务端GrayLog把日志信息格式化,存储到Elasticsearch客户端通过浏览器访问GrayLog,GrayLog访问Elasticsearch。

2024-03-14 19:22:50 396

原创 day11-物流信息微服务

课程安排物流信息的需求分析技术实现分析基于MongoDB的功能实现多级缓存的解决方案Redis缓存存在的问题分析并解决1、背景说明快递员将包裹取走之后,直至收件人签收,期间发件人和收件人最为关心的就是“快递到哪了”,如何让收发件人清晰的了解到包裹的“实时”状态,就需要将物流信息给用户展现出来,也就是今天要学习的主要内容【物流信息】。然而,此功能的并发量是有一定要求的,特别是在电商大促期间,快件数量非常庞大,也就意味着查询人的量也是很大的,所以,此处必须是缓存应用的集中地,我们也将在该业务

2024-03-14 19:22:22 354

原创 1、Redis面试题

这个是不能的,比如,当线程1加锁成功后,master节点数据会异步复制到slave节点,此时当前持有Redis锁的master节点宕机,slave节点被提升为新的master节点,假如现在来了一个线程2,再次加锁,会在新的master节点上加锁成功,这个时候就会出现两个节点同时持有一把锁的问题。我们当时采用的阿里的canal组件实现数据同步:不需要更改业务代码,部署一个canal服务。:嗯,是这样的,单节点Redis的并发能力是有上限的,要进一步提高Redis的并发能力,可以搭建主从集群,实现读写分离。

2024-03-14 19:20:11 319

原创 day07-智能调度之调度任务

通过前面的学习,已经掌握了路线规划的核心实现,有了路线规划之后就可以对运单进行调度了,这将是物流项目最为核心的内容,一个好的调度系统可以高效的管理着运单、运输任务、司机作业单、快递员取派件任务等,接下来你将参与智能调度的开发中,其中一部分业务功能已经实现,但核心的业务逻辑是需要你来实现的。对于运单号的生成有特殊的要求,格式:SL+13位数字,例如:SL1000000000760,对于这个需求,如果采用MP提供的雪花id生成是19位,是不能满足需求的,所以我们需要自己生成id,并且要确保唯一不能重复。

2024-03-13 21:59:54 323

原创 day06-路线规划之微服务

通过前面的Neo4j的学习,你已经基本掌握了Neo4j的使用,接下来就需要应用Neo4j来实现路线规划微服务了。目前路线规划微服务中的代码框架基本上已经写好了,但是具体的实现并没有编写,所以就需要你来填充这些关键核心的代码。对于运输路线规划,总的需求有两个,一个是机构管理,一个是路线管理。其中,机构的管理是需要与【权限管家】系统中的【组织管理】中的数据进行同步,该同步是需要通过MQ完成的。路线管理,主要提供路线的维护,最核心的服务是提供路线规划查询服务。:::danger需要说明的是,一个

2024-03-13 21:59:03 354

原创 day05-路线规划之Neo4j入门

课程安排路线规划需求分析路线规划实现方案分析Neo4j的快速入门学习Cypher入门学习Spring Data Neo4j1、背景说明在实现运费微服务中,介于你出色的表现,现在项目三组承接了一个新的开发任务,需要开发运输路线微服务,这将是一个全新微服务,开发经理决定让你来负责这个微服务的开发。2、需求分析首先想个问题,用户小王在神领物流用户端下了个订单,是从上海发往北京的包裹,神领物流接收这个单子后,是如何进行运输的呢?是直接开一辆车去送吗?还是需要中转?需要中转多少次呢?怎么样的中

2024-03-13 21:58:07 843

原创 day04-运费微服务

现在出现了新的情况,开发二组一名负责运费微服务的同事小张离职了,开发二组目前人手不足,需要借调去接手这个任务,你需要知道的是,运费计算微服务是核心的微服务,不能出现计算错误,毕竟是钱挂钩的。需求:计算运费的第一步就是根据参数查询运费模板,而这个动作会访问数据库,并且是比较频繁的,然而运费模板的变更并不频繁,需要可以将运费模板缓存起来,以提高效率。运费的计算是分不同地区的,比如:同城、省内、跨省,计算规则是不一样的,所以针对不同的类型需要设置不同的运费规则,这其实就是所谓的模板。

2024-03-13 21:57:13 806

原创 day03-支付微服务

新入职的你加入了开发一组,也接到了开发任务,并且你也顺利的完成了网关的鉴权业务的开发。现在开发三组所负责的支付微服务需要你来支援一下,目前支付微服务完成了支付宝和微信的对接,主要实现的功能有支付渠道的维护、扫码支付(微信称Native支付,支付宝称当面付)、退款等功能。其中扫码支付功能是快递员上门取件时,会亮出二维码,用户可以通过支付宝或微信进行扫描后,对运费的支付。流程说明: 【付款方式】判断寄付/到付交互支付业务与其他业务相比,相对独立,所以比较适合将支付业务划分为一个微服务,而支付业务并不关

2024-03-13 21:56:43 2246

原创 day02-网关与支付

课程安排单token存在的问题双token三验证用户端token校验与鉴权对接三方支付平台分布式锁1、场景说明新入职的你加入了开发一组,也接到了开发任务,并且你也顺利的修复了bug,完成了快递员、司机的鉴权,现在的你已经对项目的业务功能、开发环境以及网关代码设计都有了一定的了解,但是对于用户端的校验和鉴权并没有涉及,接下来你需要完成用户端的校验和鉴权。另外,需要你了解下如何与三方支付平台对接,因为后面你需要接手支付微服务的开发。2、单token存在的问题在司机端、快递员端和管理管,登

2024-03-13 21:56:12 909

原创 day01-项目概述

课程安排了解神领物流了解物流行业了解项目的技术架构了解项目的业务功能项目功能演示搭建开发环境基于现有代码进行bug修复阅读已有的代码1、场景说明现在的你,已经学习了目前最主流的系统架构技术《微服务技术栈》,并且呢也拿到了满意的offer,入职了一家物流公司,公司名叫:神领物流公司。现在你的心情还是比较复杂的,既开心又担心,开心是这个offer你很满意,担心的是,听朋友说物流行业的项目业务非常复杂,技术涉及的也比较多,而自己从来没有接触过物流项目,就担心自己能不能Hold得住?万一…

2024-03-13 21:55:35 846

原创 6、集群装机

PXE (Pre-boot Execution Environment) 是由Intel设计的协议,它可以使计算机通过网络启动。协议分为client和server两端,PXE client在网卡的ROM中,当计算机引导时,BIOS把PXE client调入内存执行,并显示出命令菜单,经用户选择后,PXE client将放置在远端的操作系统通过网络下载到本地运行。

2024-03-13 21:30:54 826

原创 5、安全防御

*拒绝服务(DOS):**通过大量访问请求使服务器资源耗尽,无法向正常用户处理请求连接。常见解决手段使用云服务商的流量清洗功能**口令破解:**常用攻击手法俗称“跑字典”,常用解决方案设置登录错误次数限制**已知漏洞:**通过已知漏洞进行数据获取或提权,常见解决手段定时更新防御性补丁**欺骗权限用户:**又称社会工程学,通过欺骗权限用户得到授权资格的方式规则链:承载防火墙规则**1)入站:**INPUT**2)出站:**OUTPUT**3)转发:**FORWARD。

2024-03-13 21:27:23 793

原创 4、集群监控

宕机损失案例:美国呼叫中心 24000 美金/小时阿里/百度:2、常见监控平台zabbix 是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案 ( 基于 GPL V2 )zabbix由 2 部分构成,zabbix server与可选组件zabbix agent1)源码编译安装 Nginx 服务器并开启状态统计模块2)Zabbix 客户端配置-1、编写 Nginx 监控脚本,在被监控端/bin/bashPORT=“80”# 检测nginx进程是否存在。

2024-03-13 21:17:56 941

原创 3、存储服务

*说明:**直接附加存储,等同于存储设备通过数据线、光缆、SATA 直连主机优点技术简单传输效率最高**缺点:**存储设备与主机相互绑定,不利于后期扩展与共享网络拓扑NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源。在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样。

2024-03-13 21:10:20 892

原创 2、Squid 代理

Squid cache(简称为 Squid)是一个流行的自由软件(GNU 通用公共许可证)的代理服务器和 Web 缓存服务器。Squid 有广泛的用途,从作为网页服务器的前置 cache 服务器缓存相关请求来提高 Web 服务器的速度,到为一组人共享网络资源而缓存万维网,域名系统和其他网络搜索,到通过过滤流量帮助网络安全,到局域网通过代理上网。Squid 主要设计用于在 Unix 一类系统运行。

2024-03-13 20:51:48 1160

原创 1、Linux集群化

更好的利用现有资源实现服务的高度可用集群扩展方式垂直扩展:更换服务器硬件水平扩展:添加更多的服务器节点常见的集群拓扑案例环境专为LVS和HA设计的一款健康检查工具支持故障自动切换(Failover)支持节点健康状态检查(Health Checking)官方网站:http://www.keepalived.org/

2024-03-13 20:42:27 1139

原创 阿里云ECS-安装docker

step 1: 安装必要的一些系统工具。Step 4: 更新Docker-CE。Step 5: 安装Docker-CE。Step 6: 启动Docker服务。Step 2: 添加软件源信息。Step 3:设置yum源。

2023-11-01 16:56:49 30

redis-6.2.6+resp-2022.2

Redis的Linux安装通常涉及从其官方网站下载最新稳定版源代码包,然后在Linux系统上编译和安装。截至2024年3月14日,我无法直接提供resp-2022.2这个特定版本的Redis,因为Redis官方发布版本格式通常是`redis-x.y.z.tar.gz`,其中x、y、z代表主版本号、次版本号和修订版本号。 如果您想安装Redis的某个特定历史版本(如假设的"resp-2022.2"),您可以按照以下步骤操作: 1. 访问Redis官网的归档页面:https://download.redis.io/releases/ 2. 在该页面查找与您提到的版本相对应的文件名,如果“resp-2022.2”是实际存在的版本号,那么它应该列在发行版本列表中。 3. 使用wget或curl等工具下载指定版本的源代码包到Linux服务器: ```bash wget https://download.redis.io/releases/redis-resp-2022.2.tar.gz # 假设这样的URL存在 ```

2024-03-14

SaaS Export进出口贸易管理系统.sql

SaaS模式的进出口贸易管理系统是一种基于云计算技术的应用服务,它允许企业通过网络访问和使用一套完整的进出口业务管理软件,而无需在本地安装和维护该软件。这类系统通常具备以下功能: 1. **客户管理** 2. **供应商管理** 3. **产品管理** 4. **订单管理** 5. **单证管理** 6. **采购管理** 7. **物流管理** 8. **仓库管理** 9. **财务管理** 10. **合规与风控** 11. **自动化工作流** SaaS Export进出口贸易管理系统的优势在于其灵活性、可扩展性和低运维成本。用户可以根据自身需求订阅相应服务,并随着业务增长轻松调整服务规模。同时,由于所有数据存储在云端,企业可以在任何有互联网连接的地方进行操作,增强了团队协作效率和业务连续性。市场上有多款此类产品,例如胜途跨境电商ERP、米境通跨境电商ERP、因尚科技-进出口贸易管理系统以及其他专注于外贸出口领域的SaaS解决方案。

2021-08-31

空空如也

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

TA关注的人

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