https://github.com/beckbikang/ho-java
accept memcache protocol data save it to kafka on netty
https://github.com/beckbikang/ho-java
memcached netty
Last synced: 5 months ago
JSON representation
accept memcache protocol data save it to kafka on netty
- Host: GitHub
- URL: https://github.com/beckbikang/ho-java
- Owner: beckbikang
- License: apache-2.0
- Created: 2022-10-05T07:38:11.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-07-20T14:34:24.000Z (almost 2 years ago)
- Last Synced: 2024-07-20T15:50:11.739Z (almost 2 years ago)
- Topics: memcached, netty
- Language: Java
- Homepage:
- Size: 55.7 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ho-java overview
accept memcache protocol data save it to kafka use netty
just use set command,write to kafka easily
# architecture

# the feature
1. ✅write data to kafka by topic
2. ✅registe server to consul
3. ✅add prometheus monitor application
4. add unittest
# how to use server
## 1 start Java server

## 2 use test script
```python
import memcache
mc = memcache.Client(['127.0.0.1:11222'], debug=True)
#mc = memcache.Client(['127.0.0.1:9090'], debug=True)
print(mc)
ret=mc.set("test_mc", "{\"a\":123}")
print(ret)
```
## 3 listen kafka show result
java server show this

other kafka client show this

# resgiste on consul
## 1 run consul
consul agent -dev -ui=true -client 0.0.0.0 &
http://127.0.0.1:8500/ui/dc1/services
## 2 add config
1. add spring-cloud library
2. add config
```
spring.cloud.consul.host=localhost
spring.cloud.consul.port=8500
spring.cloud.consul.discovery.service-name=ho-java-producer
```

# use prometheus
http://127.0.0.1:21314/actuator/prometheus
## run promethus
```
global:
scrape_interval: 10s
evaluation_interval: 10s
scrape_configs:
- job_name: 'spring'
metrics_path: '/actuator/prometheus'
static_configs:
- targets: ['127.0.0.1:21314']
```
docker run -d -p 9090:9090 -v /tmp/px.yml:/etc/prometheus/prometheus.yml prom/prometheus
## run grafana
docker run -d -p 3000:3000 --name=grafana -v /tmp/grafana:/var/lib/grafana grafana/grafana
http://127.0.0.1:3000/?orgId=1 访问