1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/jzins-mxshop

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

Электронная коммерция система - mxshop

【Обновляется по мере возможности】

Введение

Электронная коммерция система - слойная архитектура микросервисов, сервисы между собой декуплированы. Серверный слой предоставляет внутреннюю коммуникацию через gRPC, веб-слой предоставляет внешнюю коммуникацию через HTTP. Бизнес-логика разрабатывается в веб-слое, а нижележащие взаимодействия разрабатываются в серверном слое. Все сервисы интегрированы с конфигурационным центром Nacos, сервисным регистром Consul для регистрации, обнаружения, проверки состояния и балансировки нагрузки. Используется Redis как промежуточное средство, MySQL для хранения данных, Elasticsearch для полнотекстового поиска. Jaeger для трассировки транзакций, Sentinel для управления границами и ограничениями. API-шлюз «Kong», быстрое развертывание «Jenkins».

Общая архитектура электронной коммерции системы

srv_python написан на Python для серверного слоя «ещё не реализован Elasticsearch». srv_golang написан на Go для серверного слоя, весь нижележащий код на Python переписан и оптимизирован. Веб-слой доступен по ссылке web_golang документация Серверный слой доступен по ссылке srv_python(будет отключен) или srv_golang документация Архитектура: https://www.processon.com/view/link/633904dee0b34d40be4e42ef png "Архитектура электронной коммерции системы. png")

Пример конфигурации

name: v2shopapi   # Имя сервера
host: 127.0.0.1   # Хост сервера
port: 8101        # Порт сервера
tags:
  - v1
  - shop
  - api
jwt:
  key: jwt        # Ключ JWT
sms:
  key: key        # Ключ API SMS Alibaba
  secrect: secrect # Секретный ключ API SMS Alibaba
redis:
  host: 127.0.0.1 # Хост Redis
  port: 6379      # Порт Redis
  expire: 3600    # Время жизни Redis
consul:
  host: 127.0.0.1 # Хост Consul
  port: 8500      # Порт Consul
jaeger:
  host: 127.0.0.1
  port: 6831
  name: v1shop_api
oss:
  key: key
  secrect: secrect
  host: host
  callback_url: callback_url
  upload_dir: upload_dir
user-srv:
  #    host: 127.0.0.1   # Хост сервиса пользователя для прямого подключения
  #    port: 9090        # Порт сервиса пользователя для прямого подключения
  name: v1user_srv   # Имя сервиса пользователя
userop-srv:
  #    host: 127.0.0.1   # Хост сервиса пользователя для прямого подключения
  #    port: 9090        # Порт сервиса пользователя для прямого подключения
  name: v1uesrop_srv  # Имя сервиса пользователя
goods-srv:
  #    host: 127.0.0.1   # Хост сервиса пользователя для прямого подключения
  #    port: 9090        # Порт сервиса пользователя для прямого подключения
  name: v1goods_srv   # Имя сервиса пользователя
order-srv:
  #    host: 127.0.0.1   # Прямое подключение к хосту пользовательского сервиса
  #    port: 9090        # Прямое подключение к порту пользовательского сервиса
  name: v1order_srv   # Имя пользовательского сервиса
inventory-srv:
  #    host: 127.0.0.1   # Прямое подключение к хосту пользовательского сервиса
```yaml
 #    port: 9090         # Прямое подключение к порту пользовательского сервиса
  name: v1inventory_srv   # Имя пользовательского сервиса
alipay:
  private_key: "private_key+Q"
  ali_public_key: "ali_public_key+"
  notify_url: "notify_url"
  return_url: "return_urla"
```## Инструкция по установке
Сервер: CentOS7
Убедитесь, что установлены: Docker, MySQL, Consul, Nacos, Redis, Elasticsearch, Jaeger
Визуализация: Kibana (опционально), RESP (опционально)
Тестирование: ApiFox (опционально)
Если вы не хотите устанавливать Docker, установите промежуточные компоненты самостоятельно
Если вы не хотите устанавливать Consul и Nacos, измените исходный код запуска микросервисов
Если вы не хотите использовать Elasticsearch (полнотекстовый поиск), измените основную логику сервиса товаров
Если вы не хотите использовать Jaeger, закомментируйте соответствующие строки в main.go
Установка MySQL и Redis не демонстрируется

### 1. Установка Nacos
https://blog.csdn.net/the_shy_faker/article/details/127523158

### 2. Установка Consul
https://blog.csdn.net/the_shy_faker/article/details/127425125

### 3. Установка Elasticsearch
https://blog.csdn.net/the_shy_faker/article/details/128520129

### 4. Установка Jaeger
https://blog.csdn.net/the_shy_faker/article/details/129044832

## Инструкция по использованию
Пожалуйста, перейдите в слой server или web для просмотра документации
Инструкция по тестированию ApiFox: https://nilszhai.apifox.cn

## Помощь для фронтенда
Я не знаком с Vue, это шаблон, взятый с интернета. Роутинг находится в `src/api` или `src/apis`
[online-store](https://gitee.com/jzins/mxshop/tree/master/online-store)
[mall-master](https://gitee.com/jzins/mxshop/tree/master/mall-master)

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Система электронной коммерции — микросервисная архитектура с разделением на слои, при которой сервисы декомпозированы и развязаны между собой. Слой server предоставляет внутренние вызовы через gRPC, а слой web — внешние вызовы через HTTP. Бизнес-логика разрабатывается в слое web, а низкоуровневые взаимодействия — в слое server. Все сервисы интег... Развернуть Свернуть
MulanPSL-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/jzins-mxshop.git
git@api.gitlife.ru:oschina-mirror/jzins-mxshop.git
oschina-mirror
jzins-mxshop
jzins-mxshop
master