中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁 > news >正文

wordpress商城插件收費(fèi)seo優(yōu)化論壇

wordpress商城插件收費(fèi),seo優(yōu)化論壇,有沒有專門做素食的美食網(wǎng)站,岳陽市委網(wǎng)站接上篇,我們已經(jīng)順利地完成了服務(wù)的安裝,下面就來看看如何配置并啟動(dòng)。 跟著我,你將學(xué)會(huì): 下載并安裝 踩坑:按照官方步驟來,可是網(wǎng)絡(luò)條件不允許 獲取YUM源下載RPM包手動(dòng)解壓安裝避坑 配置并啟動(dòng)&#xf…

接上篇,我們已經(jīng)順利地完成了服務(wù)的安裝,下面就來看看如何配置并啟動(dòng)。

跟著我,你將學(xué)會(huì):

  • 下載并安裝
    • 踩坑:按照官方步驟來,可是網(wǎng)絡(luò)條件不允許
      • 獲取YUM源
      • 下載RPM包
      • 手動(dòng)解壓安裝
      • 避坑
  • 配置并啟動(dòng)(本篇)
    • heplify
    • heplify-server
    • homer
    • 配置數(shù)據(jù)庫專用用戶
    • 初始化homer數(shù)據(jù)
      • 創(chuàng)建配置數(shù)據(jù)庫
      • 創(chuàng)建數(shù)據(jù)數(shù)據(jù)庫
      • 創(chuàng)建數(shù)據(jù)表并修改權(quán)限
      • 啟動(dòng)服務(wù)
  • 如何使用 Homer 查詢會(huì)話信息
    • 登錄平臺
    • 首頁看板
    • 會(huì)話詳情
    • 具體某條信令
    • 自定義查詢頁面

配置并啟動(dòng)

配置主要有幾個(gè)點(diǎn),這邊主要是依賴 PostgreSQL 來進(jìn)行數(shù)據(jù)存儲(chǔ),以下主要講 PG 數(shù)據(jù)的初始化。

heplify

Portable and Lightweight HEP Capture Agent for HOMER, Captures packets from wire and sends them to Homer

heplify 是一個(gè)終端采集工具,主要將數(shù)據(jù)推送到 heplify-server 使用

可以手動(dòng)啟動(dòng),也可以將其定義為一個(gè) systemctl 的service 進(jìn)行運(yùn)作。官方是沒有要求的,我下文會(huì)以service的形式運(yùn)行。但是測試的話,可以先手動(dòng)啟動(dòng)。

heplify-server

HEP Capture Server for HOMER
server是一個(gè)接受數(shù)據(jù)的服務(wù),數(shù)據(jù)來自heplify,需要一個(gè)其啟動(dòng)的IP端口地址。

數(shù)據(jù)主要服務(wù)于前端的Homer,因此這邊連接數(shù)據(jù)庫,也主要是關(guān)心homer的schema、homer配置所在表、homer數(shù)據(jù)所在表,額外需要一個(gè)地址、用戶。

我們來看看默認(rèn)的配置文件,默認(rèn)配置文件位于/opt/heplify-server/heplify-server.toml

HEPAddr               = "0.0.0.0:9060"
HEPTCPAddr            = ""
HEPTLSAddr            = "0.0.0.0:9060"
HEPWSAddr             = "0.0.0.0:3000"
ESAddr                = ""
ESDiscovery           = true
LokiURL               = ""
LokiBulk              = 200
LokiTimer             = 4
LokiBuffer            = 100000
LokiHEPFilter         = [1,5,100]
LokiAllowOutOfOrder   = false
ForceHEPPayload	      = []
PromAddr              = ""
PromTargetIP          = ""
PromTargetName        = ""
DBShema               = "homer7"
DBDriver              = "postgres"
DBAddr                = "localhost:5432"
DBUser                = "postgres"
DBPass                = ""
DBDataTable           = "homer_data"
DBConfTable           = "homer_config"
DBBulk                = 200
DBTimer               = 4
DBBuffer              = 400000
DBWorker              = 8
DBRotate              = true
DBPartLog             = "2h"
DBPartSip             = "1h"
DBPartQos             = "6h"
DBDropDays            = 14
DBDropDaysCall        = 0
DBDropDaysRegister    = 0
DBDropDaysDefault     = 0
DBDropOnStart         = false
DBUsageProtection     = true
DBUsageScheme         = "percentage"
DBPercentageUsage     = "80%"
DBMaxSize             = "30MB"
Dedup                 = false
DiscardMethod         = []
AlegIDs               = []
CustomHeader          = []
SIPHeader             = []
LogDbg                = ""
LogLvl                = "info"
LogStd                = false
LogSys                = false
Config                = "./heplify-server.toml"
ConfigHTTPAddr        = ""# Examples:
# -------------------------------------
# ESAddr          = "http://127.0.0.1:9200"
# DBShema         = "homer7"
# DBDriver        = "postgres"
# LokiURL         = "http://localhost:3100/api/prom/push"
# LokiHEPFilter   = [1,5,100]
# PromAddr        = "0.0.0.0:8899"
# PromTargetIP    = "10.1.2.111,10.1.2.4,10.1.2.5,10.1.2.6,10.12.44.222"
# PromTargetName  = "sbc_access,sbc_core,kamailio,asterisk,pstn_gateway"
# AlegIDs         = ["X-CID","P-Charging-Vector,icid-value=\"?(.*?)(?:\"|;|$)","X-BroadWorks-Correlation-Info"]
# DiscardMethod   = ["OPTIONS","NOTIFY"]
# CustomHeader    = ["X-CustomerIP","X-Billing"]
# SIPHeader       = ["callid","callid_aleg","method","ruri_user","ruri_domain","from_user","from_domain","from_tag","to_user","to_domain","to_tag","via","contact_user"]
# LogDbg          = "hep,sql,loki"
# LogLvl          = "warning"
# ConfigHTTPAddr  = "0.0.0.0:9876"
# -------------------------------------
# To hot reload PromTargetIP and PromTargetName run:
# killall -HUP heplify-server

homer

Homer API Server and UI Webapplication

homer 的配置就是需要數(shù)據(jù)庫的連接,不同的賬號密碼。兼容的組件和玩法也比較多,其他的配置項(xiàng)也是比較多的。

默認(rèn)配置文件位于/usr/local/homer/etc/webapp_config.json:

{"database_data": {"LocalNode": {"help": "Settings for PGSQL Database (data)","node": "LocalNode","user": "homer_user","pass": "homer_password","name": "homer_data","keepalive": true,"host": "127.0.0.1"}},"hep_relay": {"help": "UDP socket to send HEP data on","host": "127.0.0.1","port": 9060},"database_config": {"help": "Settings for PGSQL Database (settings)","node": "LocalConfig","user": "homer_user","pass": "homer_password","name": "homer_config","keepalive": true,"host": "localhost"},"influxdb_config": {"enable": true,"help": "Settings for InfluxDB Database (optional)","user": "influx_user","pass": "influx_password","name": "homer_config","host": "http://127.0.0.1:8086","database": "homer","policy": "autogen"},"prometheus_config": {"enable": true,"help": "Settings for Prometheus Database (optional)","user": "admin","pass": "admin","host": "http://127.0.0.1:9090","api": "api/v1"},"swagger": {"enable": true,"api_json": "/usr/local/homer/etc/swagger.json","api_host": "127.0.0.1:9080"},"loki_config": {"help": "Settings for LOKI Database (optional)","user": "admin","password": "admin","param_query": "query_range","regexp": false,"host": "http://127.0.0.1:3100","template": "{job=\"heplify-server\"} |~ \"%callid%\"","external_url": "","api": "loki/api/v1","enable": true},"grafana_config": {"help": "Settings for Grafana","host": "http://127.0.0.1:3000","path": "grafana","token": "","proxy_control": false,"proxy_check": "simple","enable": true},"http_settings": {"help": "Settings for the HOMER Webapp Server. If you have gzip_static = false, please be sure that your dist directory has uncompressed .js files","host": "0.0.0.0","port": 9080,"root": "/usr/local/homer/dist","gzip": true,"path": "/","gzip_static": true,"debug": false},"transaction_settings": {"deduplicate": {"global": false}},"api_settings": {"enable_token_access": false,"add_captid_to_resolve": false},"https_settings": {"help": "SSL settings for homer-app","enable": false,"host": "0.0.0.0","port": 443,"min_tls_version": "1.2","use_mozilla_profile": true,"cert": "/usr/local/homer/tls/cert.pem","key": "/usr/local/homer/tls/key.pem"},"system_settings": {"help": "Settings for HOMER logs","logpath": "/usr/local/homer/log","logname": "homer-app.log","_loglevels": "can be: fatal, error, warn, info, debug, trace","loglevel": "error","logstdout": false},"dashboard_settings": {"_comment": "Here you can define a customs dashboards home","dashboard_home": "/usr/local/homer/etc/dashboard_home.json"},"auth_settings": {"_comment": "The type param can be internal, ldap, http_auth","type": "internal","_jwt_help": "Please generate own jwt secret using uuid or the flag generate-jwt-secret","jwt_secret": "","gravatar": false,"auth_token_header": "Auth-Token","gravatar_url": "https://www.gravatar.com/avatar/%s.jpg","token_expire": 1200,"user_groups": ["admin","user","support"]},"ldap_config": {"base": "dc=example,dc=com","host": "ldap.example.com","port": 389,"usessl": false,"skiptls": true,"binddn": "uid=readonlysuer,ou=People,dc=example,dc=com","bindpassword": "readonlypassword","userfilter": "(uid=%s)","groupfilter": "(memberUid=%s)","group_attributes": ["cn","memberOf","GroupAttribute","distinguishedName","dn","member"],"admingroup": "admin","adminmode": true,"usergroup": "HOMER_user","usermode": true,"attributes": ["dn","givenName","sn","mail","uid"],"skipverify": true,"anonymous": false,"userdn": "uid=%s,ou=People,dc=example,dc=com"},"http_auth": {"url": "http://localhost:1323","skipverify": true},"oauth2": {"enable": false,"client_id": "1234565","client_secret": "FAKE","project_id": "Homer OAuth","auth_uri": "https://accounts.google.com/o/oauth2/auth","token_uri": "https://oauth2.googleapis.com/token","auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs","redirect_uri": "http://localhost:80/api/v3/oauth2/auth","service_redirect": "/api/v3/oauth2/redirect","profile_url": "https://www.googleapis.com/oauth2/v1/userinfo","provider_name": "google","grant_type": "authorization_code","response_type": "code","auth_style": 1,"user_token": "RandomURLSafeStringWithAMinimumLengthOf43Characters","scope": ["email","openid","profile"],"gravatar": false,"gravatar_url": "https://www.gravatar.com/avatar/%s.jpg","provider_image": ""},"decoder_shark": {"_comment": "Here you can do packet decoding using tshark application. Please define uid, gid if you run the app under root","active": false,"bin": "/usr/bin/tshark","protocols": ["1_call","1_registration","1_default"]}
}

配置數(shù)據(jù)庫專用用戶

對于homer服務(wù),創(chuàng)建數(shù)據(jù)庫專用用戶。

使用管理員賬戶連接上PG后,執(zhí)行。

create user homer with password 'homerpass';

初始化homer數(shù)據(jù)

從上面的配置就可以看到,有一個(gè)配置數(shù)據(jù)庫和一個(gè)數(shù)據(jù)數(shù)據(jù)庫,下面就對其進(jìn)行初始化,需要用到pg的root用戶。

創(chuàng)建配置數(shù)據(jù)庫
$ homer-app -create-config-db -database-root-user=root -database-host=xx.xx.xx.xx -database-root-password=pass -database-homer-user=homerCONNECT to DB ROOT STRING: [host=192.168.5.109 user=root dbname=postgres sslmode=disable port=5432 password=root]HOMER - create db [homer_config] with [name=homer](/app/migration/migration.go:89)
[2024-08-20 18:08:30]  [148.72ms]  CREATE DATABASE "homer_config" OWNER "homer"
[0 rows affected or returned ]DONEHOMER - show usersRole name       |       Attributes
------------------------------------------------homer   |root    |       superuser, create databasetest    |DONE

登錄確認(rèn):

psql (9.2.24, server 12.19)
WARNING: psql version 9.2, server version 12.0.Some psql features might not work.
Type "help" for help.postgres=# \lList of databasesName     | Owner | Encoding |  Collate   |   Ctype    | Access privileges
--------------+-------+----------+------------+------------+-------------------homer_config | homer | UTF8     | en_US.utf8 | en_US.utf8 |postgres     | root  | UTF8     | en_US.utf8 | en_US.utf8 |root         | root  | UTF8     | en_US.utf8 | en_US.utf8 |template0    | root  | UTF8     | en_US.utf8 | en_US.utf8 | =c/root          +|       |          |            |            | root=CTc/roottemplate1    | root  | UTF8     | en_US.utf8 | en_US.utf8 | =c/root          +|       |          |            |            | root=CTc/roottest         | root  | UTF8     | en_US.utf8 | en_US.utf8 | =Tc/root         +|       |          |            |            | root=CTc/root    +|       |          |            |            | test=CTc/root
(6 rows)
創(chuàng)建數(shù)據(jù)數(shù)據(jù)庫
$ homer-app -create-data-db -database-root-user=root -database-host=xx.xx.xx.xx -database-root-password=pass -database-homer-user=homerHOMER - create db [homer_data] with [name=homer](/app/migration/migration.go:89)
[2024-08-20 18:10:25]  [115.71ms]  CREATE DATABASE "homer_data" OWNER "homer"
[0 rows affected or returned ]DONEHOMER - show usersRole name       |       Attributes
------------------------------------------------homer   |root    |       superuser, create databasetest    |DONE

登錄確認(rèn):

psql (9.2.24, server 12.19)
WARNING: psql version 9.2, server version 12.0.Some psql features might not work.
Type "help" for help.postgres=# \lList of databasesName     | Owner | Encoding |  Collate   |   Ctype    | Access privileges
--------------+-------+----------+------------+------------+-------------------homer_config | homer | UTF8     | en_US.utf8 | en_US.utf8 |homer_data   | homer | UTF8     | en_US.utf8 | en_US.utf8 |postgres     | root  | UTF8     | en_US.utf8 | en_US.utf8 |root         | root  | UTF8     | en_US.utf8 | en_US.utf8 |template0    | root  | UTF8     | en_US.utf8 | en_US.utf8 | =c/root          +|       |          |            |            | root=CTc/roottemplate1    | root  | UTF8     | en_US.utf8 | en_US.utf8 | =c/root          +|       |          |            |            | root=CTc/roottest         | root  | UTF8     | en_US.utf8 | en_US.utf8 | =Tc/root         +|       |          |            |            | root=CTc/root    +|       |          |            |            | test=CTc/root
(7 rows)
創(chuàng)建數(shù)據(jù)表并修改權(quán)限
$ homer-app -create-table-db-configHOMER - creating tables for the config DB [dbname=homer_config]
Successful ping: 192.168.5.109, Type: config, Node: localnode
DONE$ homer-app -populate-table-db-config
Successful ping: 192.168.5.109, Type: config, Node: localnodeINFO[0000] SELECT * FROM "versions"                      module=gorm type=sqlHOMER - filling tables for the config DB [dbname=homer_config]reinstalling usersreinstalling global_settingsreinstalling auth_tokenreinstalling agent_location_sessionreinstalling hepsub_mapping_schemareinstalling user_settingsreinstalling mapping_schemareinstalling versionsDONE$ homer-app -upgrade-table-db-configHOMER - upgrading tables for the config DB [dbname=homer_config]
Successful ping: 192.168.5.109, Type: config, Node: localnode
DONE

完成以上步驟后,對應(yīng)配置文件內(nèi)的連接用戶、地址、數(shù)據(jù)庫名都做好調(diào)整,就可以準(zhǔn)備啟動(dòng)服務(wù)了。

啟動(dòng)服務(wù)

啟動(dòng)heplify-server

$ systemctl start heplify-server
$ systemctl status heplify-server
● heplify-server.service - HEP Server & Switch in GoLoaded: loaded (/usr/lib/systemd/system/heplify-server.service; enabled; vendor preset: disabled)Active: active (running) since 五 2024-09-13 10:55:19 CST; 1s agoMain PID: 17504 (heplify-server)CGroup: /system.slice/heplify-server.service└─17504 /usr/local/bin/heplify-server -config=/etc/heplify-server.toml913 10:55:19 192.168.5.167 systemd[1]: Started HEP Server & Switch in Go.

啟動(dòng)homer-app

$ systemctl start homer-app
$ systemctl status homer-app
● homer-app.service - Homer API Server and UI WebapplicationLoaded: loaded (/usr/lib/systemd/system/homer-app.service; disabled; vendor preset: disabled)Active: active (running) since 五 2024-09-13 10:55:59 CST; 1s agoMain PID: 17560 (homer-app)CGroup: /system.slice/homer-app.service└─17560 /usr/local/bin/homer-app913 10:56:00 192.168.5.167 homer-app[17560]: ___ /  /::\
913 10:56:00 192.168.5.167 homer-app[17560]: /__/\  /:/\:\     _____
913 10:56:00 192.168.5.167 homer-app[17560]: \  \:\/:/__\/    |___  |
913 10:56:00 192.168.5.167 homer-app[17560]: \  \::/            / /
913 10:56:00 192.168.5.167 homer-app[17560]: \  \:\           / /
913 10:56:00 192.168.5.167 homer-app[17560]: \  \:\         /_/
913 10:56:00 192.168.5.167 homer-app[17560]: \__\/
913 10:56:00 192.168.5.167 homer-app[17560]: 
913 10:56:00 192.168.5.167 homer-app[17560]:  Version: homer-app 1.5.3. 
913 10:56:00 192.168.5.167 homer-app[17560]: ? http server started on [::]:9080
[root@192 ~]# 

最終啟動(dòng) heplify

/opt/heplify/heplify -i lo -hs ip:9060 -m SIP -dim REGISTER -pr 5060-5090

它的使用方法簡單講,就是基于什么網(wǎng)口、針對什么類型網(wǎng)絡(luò)流量、是否需要過濾、端口范圍是什么,抓到的數(shù)據(jù)推到哪里。

我上面的配置就是:針對lo網(wǎng)口上,端口5060-5090范圍內(nèi)的SIP消息,除卻REGISTER消息,其他抓取的到后送到ip:9060地址。

看看它的詳細(xì)用法:

$ /opt/heplify/heplify --help
Use heplify 1.66.7 like: /opt/heplify/heplify [option]-assembly_debug_logIf true, the github.com/google/gopacket/tcpassembly library will log verbose debugging information (at least one line per packet)-assembly_memuse_logIf true, the github.com/google/gopacket/tcpassembly library will log information regarding its memory use every once in a while.-b intInterface buffersize (MB) (default 32)-bpf stringCustom BPF to capture packets-collectonlysipcollect only sip-d stringEnable certain debug selectors [defrag,layer,payload,rtp,rtcp,sdp]-ddDeduplicate packets-di stringDiscard uninteresting packets by any string-didip stringDiscard uninteresting SIP packets by Destination IP(s)-diip stringDiscard uninteresting SIP packets by Source or Destination IP(s)-dim stringDiscard uninteresting SIP packets by Method [OPTIONS,NOTIFY]-disip stringDiscard uninteresting SIP packets by Source IP(s)-e	Log to stderr and disable syslog/file output-eof-exitExit on EOF of ReadFile-erspanerspan-fg uintFanout group ID for af_packet-fi stringFilter interesting packets by any string-fnum intThe total num of log files to keep (default 7)-fsize uintThe rotate size per log file based on byte (default 10485760)-fw intFanout worker count for af_packet (default 4)-hep-buffer-activateenable buffer messages if connection to HEP server broken-hep-buffer-debugenable debug buffer messages-hep-buffer-file stringfilename and location for hep-buffer file (default "HEP-Buffer.dump")-hep-buffer-max-size stringmax buffer size, can be B, KB, MB, GB, TB. By default - unlimited (default "0")-hi uintHEP node ID (default 2002)-hin stringHEP collector address [udp:127.0.0.1:9093]-hn stringHEP node Name-hp stringHEP node PW-hs stringHEP server address (default "127.0.0.1:9060")-i stringListen on interface (default "any")-keepalive uintkeep alive internal - 5 seconds by default. 0 - disable (default 5)-l stringLog level [debug, info, warning, error] (default "info")-lp intLoop count over ReadFile. Use 0 to loop forever (default 1)-m stringCapture modes [SIP, SIPDNS, SIPLOG, SIPRTCP] (default "SIPRTCP")-n stringLog filename (default "heplify.log")-nt stringNetwork types are [udp, tcp, tls] (default "udp")-o	Read packet for packet-p stringLog filepath (default "./")-pr stringPortrange to capture SIP (default "5060-5090")-prometheus stringprometheus metrics - ip:port. By default all IPs (default ":8090")-protobufUse Protobuf on wire-rf stringRead pcap file-rsUse packet timestamps with maximum pcap read speed-rt intPcap rotation time in minutes (default 60)-s intSnaplength (default 8192)-script-file stringScript file to execute on each packet-script-hep-filter stringHEP filter for script, comma separated list of HEP types (default "1")-sipassemblyIf true, sipassembly will be enabled-skipverifyskip certifcate validation-slLog to syslog-t stringCapture types are [pcap, af_packet] (default "af_packet")-tcpassemblyIf true, tcpassembly will be enabled-tcpsendretries uintNumber of retries for sending before giving up and reconnecting-versionShow heplify version-vlanvlan-wf stringPath to write pcap file-zfEnable pcap compression

命令行直接啟動(dòng)后,輸出的東西很少,主要就是產(chǎn)生流量,然后去homer的頁面看了。

因?yàn)槊钚袉?dòng)僅僅是測試,因?yàn)榻K端肯定還是會(huì)關(guān)掉的,那么service模式怎么配置呢?

$ cat /etc/systemd/system/heplify.service[Unit]Description=Captures packets from wire and sends them to HomerAfter=network.target[Service]WorkingDirectory=/opt/heplifyExecStart=/opt/heplify/heplify -i lo -hs ip:9060 -m SIP -dim REGISTER -pr "5060-5090"ExecStop=/bin/kill ${MAINPID}Restart=on-failureRestartSec=10sType=simple[Install]WantedBy=multi-user.target

其實(shí)就是熟悉的那條命令,只不過交由 systemctl 來管理。手動(dòng)修改完指令后,reload一下,就可以嘗試啟動(dòng)了。

$ systemctl start heplify
$ systemctl status heplify
● heplify.service - Captures packets from wire and sends them to HomerLoaded: loaded (/etc/systemd/system/heplify.service; enabled; vendor preset: disabled)Active: active (running) since 五 2024-09-13 10:53:05 CST; 2s agoProcess: 22817 ExecStop=/bin/kill ${MAINPID} (code=exited, status=0/SUCCESS)Main PID: 17288 (heplify)CGroup: /system.slice/heplify.service└─17288 /opt/heplify/heplify -i lo -hs ip:9060 -m SIP -dim REGISTER -pr 5060-5090913 10:53:05 ip systemd[1]: Started Captures packets from wire and sends them to Homer.

看看啟動(dòng)后的web頁面成效:

在這里插入圖片描述

后續(xù)再介紹每一個(gè)頁面的功能和使用。

sipcapture對這塊功能版圖還是鋪的比較大,結(jié)合kamailio也做了sipcature的模塊,輔助實(shí)現(xiàn)更為更多會(huì)話或事務(wù)級別的功能,此外還使用過siptrace去發(fā)送hep數(shù)據(jù)。

這里有幾點(diǎn)思考:

  • 對于heplify,這個(gè)外部抓網(wǎng)口數(shù)據(jù)的,如果一個(gè)服務(wù)器上很多服務(wù),各種各樣的網(wǎng)絡(luò)包數(shù)據(jù),使用這個(gè)工具抓取并過濾,不知道是否合適。但是它的好處就是對于Kamailio沒有任何影響。
  • 對于siptrace,開源技術(shù)公司出品,他其實(shí)內(nèi)部就是指定一個(gè)heplify-server的地址,和heplify是一樣的情況,但是這個(gè)抓取就是KM的腳本可自行控制的,追或者不追都可以,模式可選,也可寫入到KM自己的數(shù)據(jù)庫中。相比較,KM自身發(fā)起可控,但對KM的流程需要增加一步,高并發(fā)的場景不知道效果性能如何?
  • 對于sipcapture,商業(yè)化公司出品,圍繞其他公司相關(guān)產(chǎn)品。個(gè)人覺得這個(gè)模塊是取代heplify-server的,新部署一個(gè)KM使用sipcapture模塊,來接受siptrace過來的數(shù)據(jù),然后直接寫到數(shù)據(jù)庫中,類似于 heplify-server收到數(shù)據(jù)寫入數(shù)據(jù)庫的動(dòng)作。介紹較少,版圖太大,沒搭建起來嘗試,有嘗試過的小伙伴可以分享一下。詳見官方文檔說明。

在這里插入圖片描述

http://www.risenshineclean.com/news/7413.html

相關(guān)文章:

  • 推廣網(wǎng)站有多少家鄭州seo公司哪家好
  • 怎樣做天貓網(wǎng)站視頻李江seo
  • 一級造價(jià)工程師報(bào)名網(wǎng)站軟文是指什么
  • 中山商城型網(wǎng)站建設(shè)企業(yè)模板建站
  • com網(wǎng)站建設(shè)app開發(fā)費(fèi)用一覽表
  • 帝國新聞網(wǎng)站模板近一周的新聞大事熱點(diǎn)
  • 網(wǎng)站建設(shè) php東莞seo網(wǎng)絡(luò)公司
  • 橙色企業(yè)網(wǎng)站模板網(wǎng)店推廣有哪些
  • 廣西欽州有人幫做網(wǎng)站的公司嗎百度地圖3d實(shí)景地圖
  • 綏化市建設(shè)工程網(wǎng)站招投標(biāo)app推廣公司怎么對接業(yè)務(wù)
  • 新蒲建設(shè)集團(tuán)網(wǎng)站數(shù)據(jù)交換平臺
  • 如何做視頻網(wǎng)站技術(shù)指標(biāo)網(wǎng)絡(luò)營銷策劃的流程
  • 大安移動(dòng)網(wǎng)站建設(shè)西安企業(yè)seo
  • 展示型手機(jī)網(wǎng)站模板seo就業(yè)
  • 湖南省建設(shè)廳網(wǎng)站首頁網(wǎng)絡(luò)顧問
  • 幫企業(yè)外賣網(wǎng)站做推移動(dòng)網(wǎng)站優(yōu)化排名
  • 網(wǎng)站免費(fèi)優(yōu)化工具怎樣宣傳網(wǎng)站
  • 在建設(shè)政府門戶網(wǎng)站時(shí)要充分考慮到引流推廣是什么意思
  • 廈門網(wǎng)紅鄭州seo技術(shù)
  • 網(wǎng)站建設(shè) 網(wǎng)站優(yōu)化5118數(shù)據(jù)分析平臺官網(wǎng)
  • 免費(fèi)域名申請哪個(gè)網(wǎng)站好產(chǎn)品推廣方案ppt
  • 建站優(yōu)化收費(fèi)石家莊抖音seo
  • 好看又免費(fèi)的圖片素材網(wǎng)站成都網(wǎng)站推廣經(jīng)理
  • 電腦維修 做網(wǎng)站軟文網(wǎng)站名稱
  • 企業(yè)做網(wǎng)站需要什么資料關(guān)鍵詞優(yōu)化哪個(gè)好
  • 棗莊住房和城鄉(xiāng)建設(shè)局網(wǎng)站滄州網(wǎng)站優(yōu)化公司
  • 中山做網(wǎng)站博客推廣的方法與技巧
  • 深圳 公司網(wǎng)站建設(shè)優(yōu)化關(guān)鍵詞排名哪家好
  • 做網(wǎng)站一般什么配置超級外鏈自動(dòng)發(fā)布工具
  • 品牌做網(wǎng)站搜索百度網(wǎng)址網(wǎng)頁