【Обновляется по мере возможности】
Электронная коммерция система - слойная архитектура микросервисов, сервисы между собой декуплированы. Серверный слой предоставляет внутреннюю коммуникацию через 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 )