trpc-go 博客系统

trpc-go 博客系统

使用go语言构建的全栈项目,充分利用了go的简洁性、高性能和并发处理能力。

系统采用了trpc-go框架和北极星进行分布式开发,展示了如何基于腾讯开源技术栈构建微服务架构,实现高效的服务通信和管理。

https://github.com/baker-yuan/go_blog

🌟 特性

  • Go语言实现: 后端服务使用go语言编写,继承了go的优势,如简洁的语法、出色的性能、原生的并发支持和跨平台部署能力。

  • 分布式开发: 利用trpc-go框架和北极星实现了高效的分布式服务开发。

  • 多样化代码架构: 项目中的每个微服务采用了不同的代码组织方式,包括:

    • go_clean_template ( Clean Architecture)

    • kratos-layout (DDD架构)

    • food-app-server (DDD架构)

    • project-layout (Go项目标准布局)

  • 服务划分: 包含用户服务、互动服务、博客服务、三方对接服务、权限服务和网关服务。

  • 前端技术: 前端使用Vue 3构建,提供了现代化的用户界面和交互体验。

  • 安全性: 权限服务专门处理权限相关逻辑,鉴权机制放在网关上,对业务无侵入。

  • 在线演示: 项目已经部署并上线,可以通过以下链接访问:http://www.baker-yuan.cn/

🛠️ 使用的框架

  • trpc-go: GitHub - trpc-group/trpc-go

  • 北极星: GitHub - polarismesh/polaris

  • go-clean-template: GitHub - evrone/go-clean-template

  • kratos-layout: GitHub - go-kratos/kratos-layout

  • food-app-server: GitHub - victorsteven/food-app-server

  • project-layout: GitHub - golang-standards/project-layout

🚀 快速开始

1、环境搭建

2、后端服务部署

3、前端服务部署

💡 贡献

如果您对改进项目有任何建议或想要贡献代码,请随时提交Pull Request或创建Issue。

⚖️ 许可证

本项目采用 MIT 许可证。


感谢您对trpc-go博客系统的兴趣,我们期待您的参与和反馈,共同推动项目向前发展。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/754700.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

项目管理系统私有化部署解决方案!找企智汇软件!

企智汇项目管理软系统是一款支持私有化部署的项目管理系统,适合大型、中型、小型企业的不同需求。企智汇软件是一个专业的项目全周期管理平台,拥有10年的项目管理经验,以项目为中心,通过计划控制进度,预算控制成本&…

HTML5语义化元素

在HTML5之前,网站的分布层级有哪些呢? nav,header,main,footer 这样做有一个弊端 我们往往过多的使用div,通过ID或class来区分元素 对于浏览器来说这些元素不够语义化 对于我来说搜索引擎来说,不…

云原生部署手册01:构建k8s集群并配置持久化存储

写在前面:k8s弃用docker的影响其实没那么大 k8s通过dockershim对docker的支持从1.20版本后就已经移除,仅支持符合Container Runtime Interface(CRI)的容器运行环境,比如containerd。containerd本身就是docker底层的容器运行环境,…

海康威视相机SDK二次开发(JAVA语言)

目录 前言客户端创建虚拟相机示例代码保存图片程序运行结果修改需求 二次开发引入外部包对SaveImage.java文件进行修改保存图片saveDataToFile方法选择相机chooseCamera方法主方法 FileUtil类处理过期照片启动类与配置文件application.yml通过实体类读取yml启动类 SaveImage.ja…

供应链投毒预警 | 开源供应链投毒202402月报发布啦

概述 悬镜供应链安全情报中心通过持续监测全网主流开源软件仓库,结合程序动静态分析方式对潜在风险的开源组件包进行动态跟踪和捕获,发现大量的开源组件恶意包投毒攻击事件。在2024年2月份,悬镜供应链安全情报中心在NPM官方仓库(…

Linux uucico命令教程:UUCP文件传输服务程序(附实例详解和注意事项)

Linux uucico命令介绍 uucico,全称UUCP文件传输服务程序,是用来处理uucp或uux送到队列的文件传输工具。uucico有两种工作模式:主动模式和附属模式。当在主动模式下时,uucico会调用远端主机;在附属模式下时&#xff0c…

快速搭建一个一元二次方程flask应用

新建flask_service目录、templates子目录 flask_service —— app.py —— templates —— —— index.html app.py from flask import Flask, request, jsonify, render_template import random import matplotlib.pyplot as plt from io import BytesIO import base64app F…

分布式 Session--一起学习吧之架构

一、定义 分布式Session是指在一个分布式系统中,多个服务器之间共享用户的会话信息。在Web应用中,Session通常用于跟踪用户的状态和会话数据。然而,在分布式系统中,由于用户请求可能被分发到不同的服务器上,因此需要一…

jenkins Pipeline接入mysql

背景: jenkin pipeline进化过程如下: Jenkins Pipeline 脚本优化实践:从繁琐到简洁 >>>>> Jenkins Pipeline脚本优化:为Kubernetes应用部署增加状态检测>>>>>> 使用Jenkins和单个模板部署多个K…

BootScrap详细教程

文章目录 前言一、BootScrap入门二、导航三、栅格系统四、container五、面板六、媒体对象七、分页八、图标九、实现动态效果 前言 BootScrap是别人帮我们写好的CSS样式。如果想要使用BootScrap,需要先下载下来,在页面上引入,编写HTML需要按照…

Ubuntu 23.10 tar包安装和配置Elasticsearch kibana 7.13.3

目录 一、环境说明 二、准备工作 三、安装elasticsearch 3.1 安装elasticsearch 3.2 添加服务和设置开机启动 四、安装kibana 4.1. 安装kibana 4.2 添加服务和设置开机启动 出于工作需要,需要在Ubuntu 23.10系统上通过tar包方式安…

QT 商品入库与出库(库存管理系统)

商品入库 void GoodsWarehousing::InitComboBoxFunc() // 初始化Combo box控件 {int i0;QSqlQuery sqlQuery;sqlQuery.exec("SELECT * FROM commoditydatatable");QString StrId;while(sqlQuery.next()){StrIdsqlQuery.value(0).toString();ui->comboBox_Id->…

华岳M9制造企业管理软件业务流程 1/4

华岳M9制造企业管理软件业务流程 1/4 版本特征主控概念步骤1 部署一、服务器端二、客户端 步骤2 基础一、填写授权信息及操作权限分配二、设置业务期间三、账套参数设置四、设置分类目录五、其他基础设置六、功能模块管理 华岳M9制造企业管理软件业务流程,贯彻存货总…

Android 开发环境搭建(Android Studio 安装图文详细教程)

Android Studio 下载 https://developer.android.google.cn/studio?hlzh-cn Android Studio 安装 检查电脑是否启用虚拟化 如果没有开启虚拟化,则需要进入电脑的 BIOS 中开启 直接 next选择安装的组件,Android Studio 和 Android 虚拟设备&#xff…

(学习日记)2024.03.18:UCOSIII第二十节:移植到STM32

写在前面: 由于时间的不足与学习的碎片化,写博客变得有些奢侈。 但是对于记录学习(忘了以后能快速复习)的渴望一天天变得强烈。 既然如此 不如以天为单位,以时间为顺序,仅仅将博客当做一个知识学习的目录&a…

注册个人小程序

访问地址 https://mp.weixin.qq.com/ 立即注册 选择小程序 注册 填写信息 登录邮箱 访问邮箱的链接激活账号 选择个人,填写信息 注册完成,即可登录进入填写信息

使用jenkins-pipeline进行利用项目文件自动化部署到k8s上

Discard old builds:丢弃旧的构建,目的是管理存储空间、提升性能以及保持环境整洁 Do not allow concurrent builds: 禁止并发构建是指同一时间内只允许一个构建任务执行,避免多个构建同时运行可能带来的问题 Do not allow the pipeline to resume if the controller resta…

深度学习实战模拟——softmax回归(图像识别并分类)

目录 1、数据集: 2、完整代码 1、数据集: 1.1 Fashion-MNIST是一个服装分类数据集,由10个类别的图像组成,分别为t-shirt(T恤)、trouser(裤子)、pullover(套衫&#xf…

蓝桥杯-24点-搜索

题目 思路 --暴力递归全组合的方法。只有4个数,4种计算方式,共有4 * 3 * 2 * 1 * 4种不同的情况,可以写递归来实现。 --每次计算都是两个数之间的运算,因此4个数需要3次计算,第一次计算前有4个数,第二次有…

面向对象【interface接口、抽象类与抽象方法】

文章目录 interface接口定义接口接口的格式与举例静态方法私有方法接口的多继承接口的默认方法冲突解决接口与抽象类之间的对比 抽象类与抽象方法抽象类抽象类的定义抽象方法使用抽象类 参考链接 interface接口 接口是一种抽象的数据类型,它定义了一组方法&#xff…