- 博客(203)
- 资源 (5)
- 收藏
- 关注
原创 微服务中的服务雪崩及相关解决方案
一、什么是服务雪崩服务雪崩效应是一种因“服务提供者的不可用”(原因)导致“服务调用者不可用”(结果),并将不可用逐渐放大的现象。解释上面这句话:服务提供者不可用,比如,服务提供者A服务的访问压力过大,或者是网络原因,硬件原因等等多种因素,造成了服务提供者的不可访问。此时,相应的服务调用者B服务,就无法成功调用其提供的接口,并且造成线程阻塞,挤压线程。随着调用次数的增多,挤压的线程越来越多,那么这个服务调用者的抗并发量,就越来越少,直至最后崩掉。依次类推,B服务还为C服务提供了接口,那么B服务崩掉了,
2022-05-18 23:30:36 3582
原创 微服务架构详解
一、微服务架构的由来在微服务架构出现之前,最常用的架构就是单体架构,俗称"一个jar(war)包打天下"。在一个jar包工程中,采用MVC架构,分为表现层,业务层,数据访问层,所有的业务模块,都放在这个工程中集成,如下图所示:随着软件行业规模的增长,这种单体架构的弊端也越来越多,包括:耦合性高,某个地方出问题,很可能影响其他业务模块的使用代码管理成本高,项目沉重,并会随着需求的增加越来越重随着访问量的增多,这种架构的工程并发力不够… …为了解决单体结构带来的问题,就出现了微服务架构。
2022-04-25 09:24:27 36959
原创 若依框架前端Vue项目分析实战
说明前面讲解了vue2的单点知识,下面用若依提供的vue项目,实战分析一下,拿到一个vue项目,如何进行分析并进行二次开发。一、public/index.html与main.js和App.vue三者的关系vue项目是单界面应用,所有的界面将在public下的index.html里呈现。main.js是程序的入口,在这里,定义了vue实例对象。如下代码:new Vue({ el: '#app', router,//路由插件 store,//vuex插件,所有的组件中都可以使用store中
2022-04-09 21:09:10 25172 9
原创 Spring之Joinpoint类详解
说明Jointpoint是AOP的连接点。我们从源码角度看连接点有哪些属性和功能。源码/* * Copyright 2002-2016 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obt
2021-09-09 15:19:52 16194
原创 @Autowired注解详解
一、在构造函数上定义关于在构造方法上加@Autowired注解,讲下面几点:1.带有@Autowired注解(属性required默认为true)的构造方法,在Spring初始化对象实例时,会调用此构造函数,进行对象的实例化。2.如果构造方法上带有了@Autowired注解,那么这个构造方法不是public修饰的,也可以被实例化。private修饰的,也可以被实例化出来。3.当一个对象只有一个构造方法时,Spring实例化对象会默认选择这个构造方法进行实例化,无需加@Autowired注解。只有当多
2021-08-01 10:35:30 27642
原创 产品经理应该懂的人工智能知识
接下来,是时候看看训练后的模型质量了。模型的效果通常用“拟合程度”来形容,例如某个图片识别的任务中模型训练后的误差率与人类的平均误差率只相差1%,然而测试集误差比训练集误差高了10%,这就意味着模型在全新的(没见过)的数据上表现很不好,因此我们可以判断这个模型过拟合(Overfitting)了。调参的过程,是一种基于数据集、模型和训练过程细节的实证过程,图5-15描述了一个典型的深度学习调参流程,通过调试不同超参数(在这个例子中调试的是学习速率)的值来测试模型效果,直到找到能够实现最低代价函数J的超参数。
2023-12-16 21:24:47 199
原创 人工智能概论
在传统的机器学习中,数据处理需要耗费大量的时间、人力以及物力,因为机器学习的特征标注往往需要专家先进行确定,然后再通过人工编码,标记为一种数据类型,这些类型可能是纹理、方向、位置等,但是,这个过程很容易由于失误而使得任务的准确性降低。在深度学习的计算中,含有非常多的卷积、池化等操作,这些操作带来的是大量的矩阵运算,因此,深度学习对于良好硬件的依赖性非常高,强大的图形处理器(Graphic Processing Unit,GPU)可以高效地帮助深度学习处理矩阵运算,甚至可以说是使用深度学习工具的必备条件。
2023-11-30 19:53:57 480
原创 KNN算法回归问题介绍和实现
上篇博客中,介绍了使用KNN算法实现分类问题,本篇文章介绍使用KNN算法实现回归问题。介绍思路是先使用sklearn包提供的方法实现一个KNN算法的回归问题。再自定义实现一个KNN算法的回归问题工具类。一、sklearn包使用KNN算法1. 准备数据使用sklearn包提供的make_regression模块制作回归类型数据。from sklearn.datasets import make_regression除了make_regession外,sklearn包还提供了制作分类问题的数据等方法
2023-09-11 22:52:28 885
原创 KNN算法分类问题实现介绍和使用
"""自定义个一个KNN分类器""""""初始化函数""""""训练函数- 惰性计算"""# 转类型# 基本校验if X.ndim!= 1:raise ValueError("输入的参数维度有错误!!!!")# 把训练集挂到模型上面self.X = Xself.y = y"""预测函数- 第一步:先从训练集中,找出跟待预测的样本很类似的 n 个样本(欧式距离)- 第二步:这 n 样本中,哪个类别出现的最多,这个样本就属于哪个类别"""# 类型转换。
2023-09-05 12:38:32 406
原创 Numpy包常用科学计算方法总结
对于不同维度的两个向量,能否直接运算,需要看低维度的向量能否通过广播机制转成高维度的向量。所谓的广播机制就是通过复制行和列,使两个向量对齐,然后进行加减乘除计算。公式:(a:[x1,x2,......xn] b:[y1,y2......yn]) (疑问: 多维数组的a和b如何表示呢?由上面公式可知,余弦相似度取值范围是[-1,1],是内积公式的变形。公式: d = sqrt((x1 - x2) ** 2 + (y1 - y2) ** 2 +....)1. 向量的大小(向量的模)2.求两个向量的内积。
2023-09-05 11:15:56 363
原创 内网环境使用docker部署微服务系统记录
内网环境部署一套微服务应用系统,采用docker方式部署。包括mysql、redis、nginx、nacos、gateway以及应用程序的jar包。下面记录部署的过程和遇到的问题。
2023-07-14 14:29:54 3156
原创 gateway网关转发请求到nacos不同namespace和不同group下服务实例源码改造
gateway转发不同namespace和不同group服务实例
2022-11-26 19:06:25 5490 2
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人