架构:第四章:微服务架构下的分布式架构之搭建环境

基于Docker+Kubernetes,微服务容器化开发实战 前言 微服务和Docker容器技术是目前分布式架构中常用的主流技术,结合Kubemetes强大的容器服务编排与调度能力,中小企业能够简单快速地构建自己的分布式互联网架构系统。本篇文章结合实际生产项目的架构重构过程和经验,详细介绍从单体架构过渡到微服务容器化的分布式架构的各方面,主要包括**微服务开发和运维技术梭的选型、Spring Cloud微服务开发、Rancher和Kubemetes生产离线环境下的安装与部署、微服务的容器化与服务编排、日志调用链的采集和展示、基于 Prometheu 的系统监控,以及微 阅读详情

下面是我要写的一个简单的分布式架构:SpringCloud+SpringBoot+SpringMVC+MyBatis+MySQL

架构图:

准备工作:

技术选型:

使用SpringMVC进行表述层开发

使用MyBatis进行持久化层开发

使用Spring进行组件整合并管理声明式事务

使用Maven作为依赖管理和构建管理工具

使用BootStrap前端样式框架生成页面效果

使用MD5加密算法对用户密码进行加密

使用SpringMVC异常映射机制进行了异常信息的统一管理

使用MyBatis的PageHelper实现持久化层分页

使用jQuery的Pagination插件在页面上显示分页页码

使用BootStrap的模态框组件显示弹层窗口显示表格或表单等等

使用layer弹层组件显示提示消息

使用jQuery的on()函数给动态生成的元素绑定事件响应函数

使用zTree框架在页面上显示Permission数据的树形结构

通过在数据库中维护父节点id实现Permission数据的树形结构

通过动态查询每个用户已分配的许可菜单实现细粒度权限控制

使用SpringBoot开发各个具体业务模块的微服务工程

使用SpringCloud的Eureka服务作为微服务的注册中心

使用SpringCloud的Feign封装微服务信息,目的是实现像调用本地方法一样调用远程方法

使用RestTemplate将二进制文件数据上传到Provider

使用RestTemplate将二进制文件数据下载到Consumer

使用Activiti作为流程管理框架实现实名认证流程

使用FastDFS作为用户上传文件的远程分布式文件服务器

使用James邮件服务器发送邮件

使用PostMan对Provider提供的服务进行了测试

使用Freemarker作为SpringBoot环境下的视图技术

创建各个项目工程:

创建父工程:CrowdFundingParent

创建子工程:ConsumerPortal

创建子工程:ConsumerManager

其他工程都这样创建

子工程的packaging都是jar,所以可以直接finish

在CrowdFundingParent父工程的pom.xml中创建依赖管理和构建管理

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com</groupId>
  <artifactId>CrowdFundingParent</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>pom</packaging>
  
  	<modules>
		<module>RegisterCenterEureka</module>
		<module>CommonBean</module>
		<module>CommonUtil</module>
		<module>CommonFeign</module>
		<module>ProviderDatabase</module>
		<module>ProviderActiviti</module>
		<module>ConsumerPortal</module>
		<module>ConsumerManager</module>
	</modules>
  
 	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<maven.compiler.source>1.8</maven.compiler.source>
		<maven.compiler.target>1.8</maven.compiler.target>
		<junit.version>4.12</junit.version>
		<log4j.version>1.2.17</log4j.version>
	</properties>
	
	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>org.csource</groupId>
				<artifactId>fastdfs-client-java</artifactId>
				<version>1.27-SNAPSHOT</version>
			</dependency>
			<dependency>
				<groupId>org.springframework.cloud</groupId>
				<artifactId>spring-cloud-dependencies</artifactId>
				<version>Dalston.SR1</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-dependencies</artifactId>
				<version>1.5.12.RELEASE</version>
				<type>pom</type>
				<scope>import</scope>
			</dependency>
			<dependency>
				<groupId>mysql</groupId>
				<artifactId>mysql-connector-java</artifactId>
				<version>5.0.4</version>
			</dependency>
			<dependency>
				<groupId>com.alibaba</groupId>
				<artifactId>druid</artifactId>
				<version>1.0.31</version>
			</dependency>
			<dependency>
				<groupId>org.mybatis.spring.boot</groupId>
				<artifactId>mybatis-spring-boot-starter</artifactId>
				<version>1.3.0</version>
			</dependency>
			<dependency>
				<groupId>ch.qos.logback</groupId>
				<artifactId>logback-core</artifactId>
				<version>1.2.3</version>
			</dependency>
			<dependency>
				<groupId>junit</groupId>
				<artifactId>junit</artifactId>
				<version>${junit.version}</version>
				<scope>test</scope>
			</dependency>
			<dependency>
				<groupId>log4j</groupId>
				<artifactId>log4j</artifactId>
				<version>${log4j.version}</version>
			</dependency>
			<!-- Activiti场景启动器 -->
			<dependency>
				<groupId>org.activiti</groupId>
				<artifactId>activiti-spring-boot-starter-basic</artifactId>
				<version>5.21.0</version>
			</dependency>
		</dependencies>
	</dependencyManagement>

</project>

在ConsumerPortal子工程的pom.xml中创建依赖管理和构建管理

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com</groupId>
    <artifactId>CrowdFundingParent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>ConsumerPortal</artifactId>
  
  	<dependencies>
		<dependency>
			<groupId>org.csource</groupId>
			<artifactId>fastdfs-client-java</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-eureka</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-ribbon</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-config</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-freemarker</artifactId>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonBean</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonFeign</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonUtil</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
	</dependencies>
</project>

jar包出错

网上解决方案 如果还有问题可能是maven环境配置有问题,或者是父工程没有加版本号

在ConsumerManager子工程的pom.xml中创建依赖管理和构建管理

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com</groupId>
    <artifactId>CrowdFundingParent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>ConsumerManager</artifactId>
  
  	<dependencies>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-eureka</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-ribbon</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-config</artifactId>
		</dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-freemarker</artifactId>
        </dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonBean</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonFeign</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonUtil</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>

	</dependencies>
</project>

在ProviderActiviti子工程的pom.xml中创建依赖管理和构建管理

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com</groupId>
    <artifactId>CrowdFundingParent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>ProviderActiviti</artifactId>
  	<dependencies>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
		</dependency>
		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>druid</artifactId>
		</dependency>
		<dependency>
			<groupId>org.mybatis.spring.boot</groupId>
			<artifactId>mybatis-spring-boot-starter</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		<!-- eureka-server客户端 -->
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-eureka</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-config</artifactId>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonBean</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonFeign</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonUtil</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
		<!-- Activiti场景启动器 -->
		<dependency>
			<groupId>org.activiti</groupId>
			<artifactId>activiti-spring-boot-starter-basic</artifactId>
		</dependency>
	</dependencies>
</project>

在ProviderDatabase子工程的pom.xml中创建依赖管理和构建管理

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com</groupId>
    <artifactId>CrowdFundingParent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>ProviderDatabase</artifactId>
  	<dependencies>
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
		</dependency>
		<dependency>
			<groupId>com.alibaba</groupId>
			<artifactId>druid</artifactId>
		</dependency>
		<dependency>
			<groupId>org.mybatis.spring.boot</groupId>
			<artifactId>mybatis-spring-boot-starter</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<scope>test</scope>
		</dependency>
		<!-- eureka-server客户端 -->
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-eureka</artifactId>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-config</artifactId>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonBean</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonFeign</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonUtil</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
	</dependencies>
</project>

在RegisterCenterEureka子工程的pom.xml中创建依赖管理和构建管理

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com</groupId>
    <artifactId>CrowdFundingParent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>RegisterCenterEureka</artifactId>
  	<dependencies>
		<!-- eureka-server服务端 -->
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-eureka-server</artifactId>
		</dependency>
	</dependencies>
</project>

 

在CommonFeign子工程的pom.xml中创建依赖管理和构建管理

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>com</groupId>
    <artifactId>CrowdFundingParent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>
  <artifactId>CommonFeign</artifactId>
  	<dependencies>
		<!-- Feign的场景启动器 -->
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-feign</artifactId>
		</dependency>
		<dependency>
			<groupId>com</groupId>
			<artifactId>CommonBean</artifactId>
			<version>0.0.1-SNAPSHOT</version>
		</dependency>
	</dependencies>
</project>

其他工程无依赖管理和构建管理,后期如果需要在加即可

创建各工程主启动类

 

RegisterCenterEureka

@EnableEurekaServer
@SpringBootApplication

ProviderDatabase

@EnableEurekaClient
@MapperScan("com.mapper")
@SpringBootApplication

ProviderActiviti

@EnableEurekaClient
@EnableFeignClients
@SpringBootApplication

ConsumerPortal

@EnableEurekaClient
@EnableFeignClients
@SpringBootApplication

ConsumerManager

@EnableEurekaClient
@EnableFeignClients
@SpringBootApplication

例图:

创建各工程yml文件

RegisterCenterEureka

server:
  port: 84
eureka:
  instance:
    hostname: localhost
  client:
    register-with-eureka: false
    fetch-registry: false
    service-url:
      defaultZone: http://localhost:84/eureka

ProviderDatabase

server:
  port: 83
mybatis:
  config-location: classpath:mybatis/mybatis.cfg.xml
  mapper-locations:
  - classpath:mybatis/mapper/*Mapper.xml
  
spring:
  application:
    name: ProviderDatabase
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: org.gjt.mm.mysql.Driver
    url: jdbc:mysql://localhost:3306/atcrowdfunding?rewriteBatchedStatements=true&useUnicode=true&characterEncoding=utf8
    username: root
    password: root
    dbcp2:
      min-idle: 5
      initial-size: 5
      max-total: 5
      max-wait-millis: 200
      
eureka: 
  client: 
    service-url: 
      defaultZone: http://localhost:84/eureka

创建mybatis目录

创建mybatis.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">

<configuration>

    <settings>
        <setting name="cacheEnabled" value="true" />
    </settings>

</configuration>

ProviderActiviti

server:
  port: 82
  
spring:
  application:
    name: ProviderActiviti
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: org.gjt.mm.mysql.Driver
    url: jdbc:mysql://localhost:3306/atcrowdfunding?rewriteBatchedStatements=true&useUnicode=true&characterEncoding=utf8
    username: root
    password: root
    dbcp2:
      min-idle: 5
      initial-size: 5
      max-total: 5
      max-wait-millis: 200
      
eureka: 
  client: 
    service-url: 
      defaultZone: http://localhost:84/eureka

ConsumerPortal

server:
  port: 80
eureka:
  client:
    register-with-eureka: false
    service-url:
      defaultZone: http://localhost:84/eureka
spring:
  freemarker:
    template-loader-path: classpath:/templates/
    suffix: .page
crowdfunding.tracker.config.location: classpath:/tracker.conf

创建templates目录

创建tracker.conf

tracker_server=192.168.0.100:22122

ConsumerManager

server:
  port: 81
eureka:
  client:
    register-with-eureka: false
    service-url:
      defaultZone: http://localhost:84/eureka
spring:
  freemarker:
    template-loader-path: classpath:/templates/
    suffix: .page

创建templates目录

现在写一个首页显示功能测试一下

显示首页:使用Freemarker作为SpringBoot环境下的视图技术,创建一个index.page,将前端页面摸板的index.html复制j进去

修改页面

修改后

在路径前加/表示在类路径下

修改后

添加静态资源

将下面的复制

 在类路径下创建static文件夹,存放静态资源的文件目录必须是static

创建ProtalHandler.java

@Controller
public class PortalHandler {

    @RequestMapping("/main")
    public String toIndexPage() {
        return "index";
    }
}

启动工程

先启动注册中心RegisterCenterEureka

再启动子项目ConsumerPortal 

在浏览器中http://localhost:80/main默认是80端口,所以也可以直接http://localhost/main 

运行的项目yml配置为80所以浏览器使用的端口为80

这个时候页面就出来了。

数据库中创建库和表

CREATE DATABASE atcrowdfunding;
USE atcrowdfunding;
CREATE TABLE `t_member` (
  `member_id` INT(11) NOT NULL AUTO_INCREMENT,
  `login_acc` VARCHAR(100) DEFAULT NULL,
  `login_pwd` VARCHAR(100) DEFAULT NULL,
  `nick_name` VARCHAR(100) DEFAULT NULL,
  `real_name` VARCHAR(100) DEFAULT NULL,
  `card_num` VARCHAR(100) DEFAULT NULL,
  `phone_num` VARCHAR(20) DEFAULT NULL,
  `email_addr` VARCHAR(100) DEFAULT NULL,
  `auth_status` TINYINT(4) DEFAULT NULL,
  `acc_type` TINYINT(4) DEFAULT NULL,
  `company` TINYINT(4) DEFAULT NULL,
  PRIMARY KEY (`member_id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8;

注意:这里只是简单的搭建,要准备的工作就在这,这里把我自己初始的项目分享出来CrowdFundingParent,子工程可以从父工程中导出来。

大家可以用最初的搭建好的项目进行功能编写。

我编写了部分功能:门户:登录与注册,登录后实名认证流程,管理:业务审核中的实名认证审核,业务管理中的流程管理

完成的项目分享CrowdFundingParent。有时间再编写其他功能。

Windows(Win10、Win11)本地部署开源大模型保姆级教程 最近开源大模型可谓闹的沸沸扬扬,尤其是Microsoft开源的和Meta开源的llama3 70b,评测都已经接近了的水平。鉴于还有很多同学不会在上部署和使用本地模型,因此我们出一期保姆级教程。本文讲述了如何在上本地部署大模型。从最基础的软件安装到环境配置都进行了截图展示,希望对非计算机的同学也有所帮助。AI时代我们每个人都必须要掌握一些AI知识,相信不断学习的你一定不会被AI淘汰。这只是开始,后面我们还有很多工作要做,尤其是提示词和智能体。 阅读详情

相关推荐

Grok 3国内怎么用?超详细使用指南+实用指令模板

主要是用于快速分析学术论文,提取关键信息,总结研究成果。Analyze the following research paper: [粘贴或上传论文内容]1. Extract key findings, methodologies, and conclusions. (提取主要发现、方法和结论。2. Identify statistical significance and data points. (识别统计显著性和数据点。

Survivor_sl的博客 1万+

微服务架构下的分布式架构之搭建环境

下面是我要写的一个简单的分布式架构:SpringCloud+SpringBoot+SpringMVC+MyBatis+MySQL 架构图: 准备工作: 技术选型: 使用SpringMVC进行表述层开发 使用MyBatis进行持久化层开发 使用Spring进行组件整合并管理声明式事务 使用Maven作为依赖管理和构建管理工具 使用BootStrap前端样式框架生成页面效果 使用MD...

qq_31544285的博客 8318

基于任务的后勤智能体:三段构建与演进设计探究

这是系统智能化的核心难点。例如,对于一个“加强连级滩头阵地防御”子任务,系统会根据防御时长、预期敌军攻击强度、地形等因素,计算出所需的弹药(不同弹种的具体数量)、构筑工事的器材、人员的给养和饮水量、以及医疗救护的药品和血包数量。首先进行分词、词性标注等基础处理,然后利用在军事语料库上训练的命名实体识别(NER)模型,提取出关键实体,如任务类型(“夺控作战”)、作战对象(“Y岛”)、时间约束(“D日H时”、“24小时内”)、成功标准(“建立稳固滩头阵地”)、保障重点(“弹药充足”、“及时救治”)等。

weixin_49042442的博客 1088

以太坊智能合约入门项目-众筹项目

一、智能合约 智能合约(英语:Smart Contract)是一种旨在以信息化方式传播、验证或执行合同的计算机协议。智能合约允许在没有第三方的情况下进行可信交易。这些交易可追踪且不可逆转。智能合约概念于1994年由Nick Szabo首次提出。 以上解释来自于维基百科 由于缺少可信的执行环境,智能合约并没有被应用到实际产业中,自比特币诞生后,人们认识到比特币的底层技术区块链天生可以为智能合约提...

weixin_33719619的博客 727

STM32F103C8T6键盘DIY全攻略:从电路设计到固件烧录(附避坑指南)

本文详细介绍了基于STM32F103C8T6微控制器的DIY键盘制作全流程,涵盖硬件电路设计、按键矩阵实现、USB HID通信及固件烧录等关键步骤。特别针对常见问题提供避坑指南,帮助开发者高效完成从电路设计到功能实现的完整过程,打造个性化瀚文键盘。

soda5的博客 770

避开SAM3安装大坑:手把手教你用国内镜像和Modelscope权重快速跑通Demo

本文详细介绍了如何在国内环境下快速部署SAM3视觉大模型,包括使用国内镜像加速Python包安装、通过Modelscope获取权重文件以及解决CUDA 11.8等低版本适配问题。手把手教你避开常见安装陷阱,实现高效Demo运行。

weixin_30642561的博客 1407

A query was run and no Result Maps were found for the Mapped Statement 'com.atguigu.atcrowdfunding.p

是mybatis 的sql查询语句没有写返回类型

啊哈程序 1367

【OpenCV-Python】——图像处理基础&读写及显示图像&读写及播放视频&灰度图/彩色图/图像通道操作、运算

在Python中,OpenCV使用NumPy数组存储图像,Numpy是使用Python进行数组计算的软件包,提供强大的N维数组对象,支持复杂的广播功能(数组运算),集成了C/C++和Fortran代码工具,支持线性代数、傅里叶变换和随机数等特性,还可作为通用数据的高效多维容器,如在OpenCV中显示图像。Numpy的知识点见数据处理专栏,主要包括数据类型、创建数组、数组形状、索引切片和迭代、数组运算等。作为初学者,里面可能有总结不全,后续深入学习后会改善文章!下次学习图形用户界面!

weixin_51658186的博客 2084

为什么要用分布式架构,又为什么要用微服务?

上次面试时经常被问到一个问题,你为什么要用dubbo? 由于经验尚浅,实在是没说得明明白白。 我用了dubbo后,我就可以这样调接口,巴拉巴拉,说到底还是争不过面试官问:那照你这么说,我不用分布式架构也可以完成啊,你只是说了用了分布式架构后业务处理的方法,并没有弄懂里面的原因。 结果自然是。。。。。。。给了offer,没去 简要的分析一下单体架构的优缺点,再说说用了分布式架构后会遇到的问题

world6的博客 2万+

【TCAD】AlGaN 器件的Sentaurus仿真

否则,必须在 LatticeParameters Sentaurus Device 的参数文件中的部分。Sentaurus Device 有两个工具实例:第一个工具实例, sd_fdiv ,模拟正向偏置特性,第二个工具实例, sd_rviv ,模拟反向偏置特性直至击穿。对于牛顿求解器,通常应该将非线性迭代次数限制为一个足够小的值,例如 Iterations=20 ,同时通过指定非阻尼迭代次数高于允许的牛顿迭代次数来避免解的阻尼( NotDamped=30 )。晶胞中的 Ga-N 键为橙色。

荷塘阅色 1215

第十六篇:Camx IFE 、OPE 各 port口功能定义

需要注意的是,类似 CSLTFEPortIdRawDump 是没有downscale功能的,所以如果遇到fov不正确的问题,可以排除下TFE这边的 output port是否被接到了 CSLTFEPortIdRawDump 上面来。我们知道Camx 的IFE 、OPE有不少的output port,各个port是有哪些功能的呢?老一点的框架平台,采用的TEF、OPE。

239

众筹是被玩坏的C2B

什么叫“众筹”?我们先来看看京东众筹对“众筹”的阐述。“众筹”译自crowdfunding,即大众筹资或群众筹资,是一种通过互联网方式向网友募集项目资金的模式。从行业来看,国内的众筹还是一个新兴行业,处在初创阶段。众筹的通俗说法就是,彼此成就梦想,大家筹钱完成一个任务。和预售、团购的区别是:预售是B2C,众筹偏向C2B,就是出资人先有购买或投资的意愿,筹资人按需组织生产。众筹具有三点特征:1. 排...

weixin_33724659的博客 316

Gromacs 模拟昆虫 P450 解毒酶与农药结合完整指南,仅供参考!

🏆 本文收录于《全栈Bug调优(实战版)》专栏,致力于分享我在项目实战过程中遇到的各类Bug及其原因,并提供切实有效的解决方案。无论你是初学者还是经验丰富的开发者,本文将为你指引出一条更高效的Bug修复之路,助你早日登顶,迈向财富自由的梦想🚀!同时,欢迎大家关注、收藏、订阅本专栏,更多精彩内容正在持续更新中。让我们一起进步,Up!Up!Up!    备注: 部分问题/难题源自互联网,经过精心筛选和整理,结合数位十多年大厂实战经验资深大佬经验总结所得,数条可行方案供所需之人参考。

**My Coding Family** 1243

java分布式架构的搭建_架构:第四章:微服务架构下的分布式架构之搭建环境...

下面是我要写的一个简单的分布式架构:SpringCloud+SpringBoot+SpringMVC+MyBatis+MySQL架构图:准备工作:技术选型:使用SpringMVC进行表述层开发使用MyBatis进行持久化层开发使用Spring进行组件整合并管理声明式事务使用Maven作为依赖管理和构建管理工具使用BootStrap前端样式框架生成页面效果使用MD5加密算法对用户密码进行加密使用Sp...

weixin_33995900的博客 585

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

架构:第四章:微服务架构下的分布式架构之搭建环境(1)

为什么我不完全主张自学?①平台上的大牛基本上都有很多年的工作经验了,你有没有想过之前行业的门槛是什么样的,现在行业门槛是什么样的?以前企业对于程序员能力要求没有这么高,甚至十多年前你只要会写个“Hello World”,你都可以入门这个行业,所以以前要入门是完全可以入门的。②现在也有一些优秀的年轻大牛,他们或许也是自学成才,但是他们一定是具备优秀的学习能力,优秀的自我管理能力(时间管理,静心坚持等方面)以及善于发现问题并总结问题。

2401_84046876的博客 799

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

架构:第四章:微服务架构下的分布式架构之搭建环境(2)

可能有人会问我为什么愿意去花时间帮助大家实现求职梦想,因为我一直坚信时间是可以复制的。我牺牲了自己的大概十个小时写了这片文章,换来的是成千上万的求职者节约几天甚至几周时间浪费在无用的资源上。上面的这些(算法与数据结构)+(Java多线程学习手册)+(计算机网络顶级教程)等学习资源《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。

2401_84046895的博客 701

架构:第四章:微服务架构下的分布式架构之搭建环境,java在线编译器原理

ConsumerPortal org.csource fastdfs-client-java org.springframework.boot spring-boot-starter-web org.springframework.cloud spring-cloud-starter-eureka org.springframework.cloud spring-cloud-starter-ribbon org.springframework.cloud spring-cloud-sta

m0_65485385的博客 746

第四章:Spring 微服务架构

微服务架构是一种将应用程序拆分成一组小型服务的架构风格,每个服务专注于一个特定的业务功能,独立部署、运行和扩展。这些服务通过轻量级协议(如 HTTP/REST 或消息队列)进行通信。微服务架构能够提高系统的可维护性、可扩展性和容错性,适用于大型复杂应用的开发。在本章中,我们深入学习了 Spring 微服务架构的核心组件和实践方法。通过详细的示例代码和真实使用场景,希望这些内容对您有所帮助。如果有任何问题或需要进一步的解释,请随时提问。

Java学习 1159

电商项目——分布式基础概念和电商项目微服务架构图,划分图的详解——第二章——上篇

11

qq_44891295的博客 4837

《微服务架构与实践》读书笔记

reading note

lonelymanontheway的博客 941

电商项目——电商项目的环境搭建_开发工具&环境搭建——第五章——上篇

文章目录1:Maven环境搭建2:使用idea整合maven3:前端界面环境搭建4:配置git-ssh4.1 第一步:使用码云创建一个自己的用户账号4.2 第二步:下载git:(因为我们需要有一个git客户端把代码提交给码云)4.3 第三步:配置git,进入git bash4.4 第四步:配置ssh免密登录4.5 第五步:使用如下命令查看密钥的内容,并且登录进码云,在设置里面找到SSH KEY将.pub文件中的密钥内容粘贴进去4.6 第六步:使用如下命令,测试是否可以成功5:项目结构创建并且提交到码云5.1

qq_44891295的博客 1595

全栈GEEK:微服务分布式架构实战,让你轻松备战金三银四

前言 在当下的互联网世界里,系统开发既简单又困难。说它简单,是因为各技术社区的贡献及各框架的完善,使整个生态越来越丰富,绝大多数的需求都可以使用现有的库实现(不用重新发明“轮子”),并且现在很多的库都非常注重使用体验,以快速实现为目标,通过少量的配置及代码便可集成使用。但合理地编排这些库以构建一个高效、稳健、灵活的系统,并不是一一件容易的事,人们一般将专精此道的人称为架构师。 一个完善可靠的微服务分布式架构需要解决众多的问题,我们可以用多种方法去解决这些问题,但刚开始接触时很难确定哪种方法是最优方.

august5291的博客 300

膜拜大神,把微服务讲的又全又好的SpringCloud架构进阶

微服务架构是一种架构模式,它提倡将单一的应用程序划分成一组小的服务,服务之间互相协调、互相融合,为用户提供最终价值,每个服务在其独立的进程中,服务与服务间采用轻量级通信机制互相协作(通常是基于HTTP协议的Restful API)。每个服务都围绕着具体业务进行构建,并且能够被独立的部署到生产环境、类生产环境等。另外,应当尽量避免统一的、集中的服务管理机制,对具体的一个服务而言,应根据业务上下文,选择合适的语言、工具对其进行构建。

知识分享官 1204

愈发火爆的微服务、分布式,2020年Java程序员还学不会基本淘汰了

前言 现在互联网IT行业现状是架构师微服务、分布式愈发火爆了,所以各位程序员同事还在等什么呢,都给我学起来撒! 小编这里为大家准备了两本BATJ技术专家推荐的两本架构实战文档来分享给大家: 微服务 微服务架构的概念,现在对于大家应该都不陌生,无论使用 Apache Dubbo、还是 Spring Cloud,都可以去尝试微服务,把复杂而庞大的业务系统拆分成一些更小粒度且独立部署的 Rest 服务。 但是这个过程,具体应该怎么做?现有的条件下到底要不要做微服务?服务拆分成什么粒度才是合适的?遗留的老

求关注 784

愈发火爆的微服务、分布式,2022年Java程序员还学不会基本淘汰了

前言 现在互联网IT行业现状是架构师微服务、分布式愈发火爆了,所以各位程序员同事还在等什么呢,都给我学起来撒! 小编这里为大家准备了两本BATJ技术专家推荐的两本架构实战文档来分享给大家: 微服务 微服务架构的概念,现在对于大家应该都不陌生,无论使用 Apache Dubbo、还是 Spring Cloud,都可以去尝试微服务,把复杂而庞大的业务系统拆分成一些更小粒度且独立部署的 Rest 服务。 但是这个过程,具体应该怎么做?现有的条件下到底要不要做微服务?服务拆分成什么粒度才是合适的?遗留的老系统需要如

sixi7762的博客 1608

SpringCloud Alibaba全攻略:从微服务架构到高效实践(一)

本页面主要介绍了Spring Cloud Alibaba中的服务治理和网关技术。内容包括: - 微服务架构的演变和常见挑战 - Nacos作为服务注册中心的使用方法 - 负载均衡策略,包括自定义实现和基于Ribbon的实现 - Feign作为声明式HTTP客户端的应用 - Spring Cloud Gateway作为API网关的优势和基本配置 - 网关限流功能的实现,使用Sentinel组件 这些技术共同构成了一个完整的微服务架构解决方案,提高了系统的可扩展性和可维护性。

2301_76154806的博客 2672
上一篇: James邮件服务器
下一篇: 开发工具:第一章:软件安装包
Java程序员廖志伟
Java程序员廖志伟 优质创作者: Java技术领域 优质创作者: Java技术领域 领域专家: 后端开发技术领域 领域专家: 后端开发技术领域
博客等级 码龄8年 2万+粉丝 1902原创
评论 64
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Java程序员廖志伟

赏我包辣条呗

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值