99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

基于SpringBoot的農(nóng)產(chǎn)品溯源系統(tǒng)設(shè)計(jì)與防偽溯源碼生成實(shí)戰(zhàn)

基于SpringBoot的農(nóng)產(chǎn)品溯源系統(tǒng)設(shè)計(jì)與防偽溯源碼生成實(shí)戰(zhàn) 眼下做農(nóng)產(chǎn)品這塊最頭疼的一件事就是“自賣(mài)自夸”。你說(shuō)你的大米是有機(jī)種植消費(fèi)者掃碼看到一個(gè)網(wǎng)頁(yè)寫(xiě)著“綠色無(wú)公害”心里其實(shí)犯嘀咕這頁(yè)面誰(shuí)做的數(shù)據(jù)哪來(lái)的是不是隨便找個(gè)人開(kāi)發(fā)個(gè)網(wǎng)站就能編我在接過(guò)不少溯源項(xiàng)目后發(fā)現(xiàn)農(nóng)產(chǎn)品溯源系統(tǒng)的本質(zhì)不是“做一個(gè)網(wǎng)站”而是把農(nóng)產(chǎn)品從種子到餐桌的全鏈路數(shù)據(jù)變成一條消費(fèi)者愿意相信的證據(jù)鏈。這篇就來(lái)說(shuō)說(shuō)怎么用SpringBoot從零搭一套真正能落地、能應(yīng)對(duì)掃碼并發(fā)、能防數(shù)據(jù)造假的農(nóng)產(chǎn)品溯源系統(tǒng)包括我實(shí)際項(xiàng)目里的表設(shè)計(jì)、溯源碼生成策略和踩過(guò)的坑。這套系統(tǒng)適合誰(shuí)準(zhǔn)備做農(nóng)產(chǎn)品品牌化的種植基地、做食品供應(yīng)鏈的技術(shù)團(tuán)隊(duì)、以及接農(nóng)產(chǎn)品類目外包項(xiàng)目的開(kāi)發(fā)者??赐昴隳苣米咭惶讓?shí)打?qū)嵉谋斫Y(jié)構(gòu)和核心代碼思路而不是一個(gè)概念性的“大架構(gòu)圖”。1. 農(nóng)產(chǎn)品的“身份證”從哪里來(lái)溯源系統(tǒng)要解決的真實(shí)問(wèn)題1.1 產(chǎn)地、批次、流通環(huán)節(jié)三者的數(shù)據(jù)關(guān)系先理清很多第一版溯源系統(tǒng)之所以做成“假大空”是因?yàn)橹蛔隽艘粋€(gè)靜態(tài)頁(yè)面加一個(gè)二維碼——掃碼進(jìn)去是一段不變的文字描述比如“產(chǎn)自山東某基地2023年10月采收”。這種系統(tǒng)本質(zhì)上是電子宣傳冊(cè)不是溯源。真正的溯源要求每個(gè)最小銷售單元一箱蘋(píng)果、一袋米、一盒茶葉都能對(duì)應(yīng)到具體的批次、具體的產(chǎn)地環(huán)境記錄、具體的檢測(cè)報(bào)告和流通軌跡。這就引出溯源系統(tǒng)里最核心的概念溯源單元Traceability Unit。它不是商品SPU同一個(gè)商品也不是庫(kù)存SKU某個(gè)規(guī)格而是“同一時(shí)間、同一產(chǎn)地、同一生產(chǎn)批次的一批貨”。比如同一個(gè)果園同一天采摘的同一品種蘋(píng)果做成一箱5kg的規(guī)格這500箱就是一個(gè)溯源批次。消費(fèi)者買(mǎi)到的是這500箱里的某一箱掃包裝上的碼看到的是這整整一個(gè)批次的完整數(shù)據(jù)。所以第一個(gè)要理清的架構(gòu)關(guān)系是商品Product比如“紅富士蘋(píng)果”只是基礎(chǔ)信息。批次Batch一次種植/采收/加工的過(guò)程記錄帶唯一批次號(hào)。溯源單元TraceUnit批次下的最小追溯單位通常一個(gè)溯源單元對(duì)應(yīng)一個(gè)唯一的溯源碼。流轉(zhuǎn)記錄TraceLog這個(gè)批次從種植、施肥、采收、檢測(cè)、倉(cāng)儲(chǔ)、運(yùn)輸?shù)戒N售各環(huán)節(jié)的事件流。我在項(xiàng)目里用的簡(jiǎn)化模型是Product 1 : N Batch 1 : N TraceUnit 1 : N TraceLog。業(yè)務(wù)上操作的是批次消費(fèi)者掃的是TraceUnit的碼掃碼后通過(guò)TraceUnit找到Batch再拉出整條TraceLog鏈條。這個(gè)模型的好處是消費(fèi)者感知到的是唯一碼我們存儲(chǔ)和管理的最小開(kāi)口卻是批次數(shù)據(jù)量可控不至于每個(gè)蘋(píng)果都單獨(dú)建一份生長(zhǎng)記錄的副本。1.2 一個(gè)合格的溯源碼掃碼后到底該展示什么消費(fèi)者掃碼的典型心理是“這是不是真的能不能證明”所以掃碼結(jié)果頁(yè)至少需要分三個(gè)層次來(lái)呈現(xiàn)產(chǎn)地證明層基地名稱、經(jīng)緯度、實(shí)景照片、種植戶信息可選展示。過(guò)程證明層農(nóng)事記錄施肥、澆水、施藥、采收時(shí)間、檢測(cè)報(bào)告農(nóng)殘、重金屬、加工/包裝記錄。流通證明層出庫(kù)時(shí)間、運(yùn)輸方式、到達(dá)銷售端的時(shí)間。我們當(dāng)時(shí)還加了一個(gè)很實(shí)用的細(xì)節(jié)在掃碼頁(yè)頂部顯示“本批次已通過(guò)XX項(xiàng)質(zhì)量檢測(cè)”用一個(gè)數(shù)字抓住消費(fèi)者注意力比放一堆報(bào)告圖片有效得多。因?yàn)檎嬲龝?huì)逐張點(diǎn)開(kāi)PDF看報(bào)告的用戶極少但“已通過(guò)17項(xiàng)檢測(cè)”這個(gè)數(shù)字一眼就能建立信任。提示千萬(wàn)別在掃碼頁(yè)堆長(zhǎng)圖和視頻移動(dòng)端加載慢跳出率高。實(shí)測(cè)下來(lái)圖片體積控制在200KB以內(nèi)首屏接口響應(yīng)在500ms以內(nèi)用戶掃碼后愿意繼續(xù)往下看概率會(huì)大幅提升。2. 技術(shù)選型定盤(pán)子SpringBoot MyBatis Vue為主的架構(gòu)取舍2.1 為什么選SpringBoot而不是Spring MVC或者Spring Cloud這個(gè)項(xiàng)目我選的是SpringBoot 2.7.x而不是直接上Spring Cloud原因很現(xiàn)實(shí)農(nóng)產(chǎn)品溯源系統(tǒng)的瓶頸在數(shù)據(jù)采集端和碼的防偽能力不在微服務(wù)拆分。大部分基地的日常操作場(chǎng)景是農(nóng)戶通過(guò)小程序錄農(nóng)事記錄、倉(cāng)庫(kù)管理員掃碼出庫(kù)、質(zhì)檢員上傳檢測(cè)報(bào)告。并發(fā)量集中在掃碼查詢但查詢鏈路極其簡(jiǎn)單按碼查批次根本用不著微服務(wù)那套注冊(cè)中心、網(wǎng)關(guān)、配置中心。SpringBoot 對(duì)這個(gè)項(xiàng)目而言最大的價(jià)值是自動(dòng)配置帶來(lái)的開(kāi)發(fā)效率。你要對(duì)接MySQL、Redis、MinIO對(duì)象存儲(chǔ)存圖片、RabbitMQ可選項(xiàng)用于異步生成溯源碼PDF的時(shí)候起步成本低到可以忽略。同時(shí)它內(nèi)置的Tomcat、優(yōu)雅停機(jī)、監(jiān)控端點(diǎn)actuator啥都有對(duì)中小團(tuán)隊(duì)十分友好。2.2 持久層用MyBatis還是JPA我的選擇和后端理由我兩個(gè)都用過(guò)農(nóng)產(chǎn)品溯源這種項(xiàng)目我選MyBatis-Plus。為什么因?yàn)樗菰聪到y(tǒng)里最頻繁的操作是多條件組合查詢。比如“查2024年5月之后采收的、產(chǎn)地是XX基地的、且檢測(cè)狀態(tài)為合格的所有批次”。MyBatis-Plus的WrapperQueryWrapper/LambdaQueryWrapper可以非常干凈地用代碼動(dòng)態(tài)拼接這種查詢不會(huì)把SQL字符串碎成一地。JPA雖然也能用Specification但實(shí)際項(xiàng)目里寫(xiě)起來(lái)還是覺(jué)得不夠直給。另一個(gè)原因是MyBatis對(duì)復(fù)雜SQL的控制力。比如我要做“按省統(tǒng)計(jì)批次數(shù)量”的報(bào)表SQLJPA需要寫(xiě)JPQL或者原生SQL混搭MyBatis里直接寫(xiě)XML后期限定索引、EXPLAIN優(yōu)化都方便。本項(xiàng)目表的關(guān)聯(lián)不算深但報(bào)表查詢有門(mén)檻XML方式更適合漸進(jìn)式優(yōu)化。2.3 前端選Vue還是服務(wù)端渲染掃碼頁(yè)單獨(dú)處理的邏輯管理后臺(tái)給基地管理員、質(zhì)檢員用的我選的是Vue 3 Element Plus因?yàn)檫@類系統(tǒng)的核心是表格、表單、狀態(tài)流轉(zhuǎn)組件化很順手。但消費(fèi)者掃碼的H5頁(yè)面我的建議是不要和后臺(tái)共用一個(gè)SPA。原因很實(shí)際掃碼頁(yè)要快首屏要輕為了一頁(yè)展示引入整個(gè)Vue全家桶vue-router、pinia、axios、打包后的ElementUI沒(méi)必要。掃碼頁(yè)是面向消費(fèi)者的鏈路越短越好。所以掃碼頁(yè)我用了很輕量的一種方式后端直接用Thymeleaf渲染一個(gè)簡(jiǎn)單模板因?yàn)镾pringBoot天然支持。生成的二維碼內(nèi)容指向后端接口/trace/scan/{code}后端查庫(kù)后把數(shù)據(jù)塞進(jìn)模板返回一個(gè)靜態(tài)化傾向的HTML頁(yè)面。這樣掃碼首屏只依賴一個(gè)接口比啟動(dòng)一個(gè)SPA應(yīng)用快得多還少一層跨域困擾。注意如果你團(tuán)隊(duì)里前端資源充足掃碼頁(yè)做成獨(dú)立小站點(diǎn)也完全可以。但技術(shù)決策上不要讓“掃碼頁(yè)”和“管理后臺(tái)”在同一個(gè)構(gòu)建產(chǎn)物里它們生命周期不同迭代頻率完全不同強(qiáng)行耦合在一起容易互相拖累。3. 核心鏈路拆解從播種批次到掃碼查詢數(shù)據(jù)如何一步步打通3.1 第一批數(shù)據(jù)從哪里來(lái)基礎(chǔ)檔案和批次初始化系統(tǒng)真正上線時(shí)第一步不是錄入一堆溯源記錄而是先把基礎(chǔ)檔案建好。基地信息base_info、產(chǎn)品庫(kù)product、種植戶/農(nóng)戶farmer、檢測(cè)機(jī)構(gòu)org、倉(cāng)庫(kù)warehouse這五類主數(shù)據(jù)必須先有否則后續(xù)批次關(guān)聯(lián)時(shí)根本沒(méi)法落庫(kù)。然后是初始化批次比如“2024-春季-煙臺(tái)紅富士-001批次”。這個(gè)批次號(hào)不是自然的自增ID而是有業(yè)務(wù)含義的編碼我定的規(guī)則是area_code product_code year season seq例如YT-HFS-2024-S1-001。這樣在Excel導(dǎo)出、物流單打印、人工電話核對(duì)時(shí)光看號(hào)碼就能定位到產(chǎn)地和季別。批次初始化時(shí)就要把一批默認(rèn)的溯源數(shù)據(jù)掛上去比如“種苗來(lái)源”“種植面積”“定植日期”這些是后續(xù)TraceLog的起點(diǎn)。3.2 農(nóng)事記錄農(nóng)戶端小程序數(shù)據(jù)如何進(jìn)到主庫(kù)農(nóng)戶在大棚里干完活用小程序選“施肥”填肥料名稱、用量、施用地塊、現(xiàn)場(chǎng)拍照提交后通過(guò)后端接口寫(xiě)入farm_record表。這里有個(gè)特別容易踩的坑農(nóng)戶上傳的圖片動(dòng)不動(dòng)是原圖3MB甚至5MB以上。如果你不做壓縮一兩周后MinIO或者OSS里就堆滿了垃圾數(shù)據(jù)而且掃碼頁(yè)加載原圖移動(dòng)網(wǎng)絡(luò)下能卡到崩潰。我的處理方式是后端接文件后先存原圖到臨時(shí)bucket異步用Java的Thumbnailator庫(kù)壓縮到最長(zhǎng)邊1280px、質(zhì)量80%再轉(zhuǎn)存正式bucket然后刪除臨時(shí)文件。接口返回給前端的是壓縮后的URL。這個(gè)環(huán)節(jié)雖然不起眼但是真正影響體驗(yàn)的細(xì)節(jié)。農(nóng)事記錄落到庫(kù)里之后根據(jù)肥料類型/施藥類型自動(dòng)打標(biāo)到批次上如果本次是施藥得分錄是不是有“安全間隔期”字段消費(fèi)者端展示“距采收還有N天/已過(guò)安全期”這個(gè)細(xì)節(jié)比單純展示“打過(guò)藥”要好得多也算體現(xiàn)專業(yè)度。3.3 檢測(cè)報(bào)告與加工包裝狀態(tài)機(jī)設(shè)計(jì)比想象中重要溯源鏈條里的數(shù)據(jù)狀態(tài)不是隨手改改就行必須有一個(gè)狀態(tài)機(jī)約束。這是我做了幾單項(xiàng)目后才真正意識(shí)到的問(wèn)題。比如一個(gè)批次的“檢測(cè)報(bào)告”和“包裝記錄”在業(yè)務(wù)上是有順序的先檢測(cè)合格才能開(kāi)始包裝。如果設(shè)計(jì)上允許直接錄入包裝記錄很容易出現(xiàn)“檢測(cè)還沒(méi)出結(jié)果貨就包裝好了”的邏輯漏洞。我設(shè)計(jì)的核心狀態(tài)機(jī)是1 種植中只能添加農(nóng)事記錄、環(huán)境記錄。2 待檢測(cè)采收后進(jìn)入可上傳樣品信息和檢測(cè)報(bào)告。3 已檢測(cè)檢測(cè)通過(guò)可以打碼、包裝、生成溯源單元。4 在庫(kù)包裝完成入倉(cāng)庫(kù)。5 流通過(guò)程出庫(kù)后每筆掃碼/收貨核銷記錄都被視為物流節(jié)點(diǎn)。6 已完成/異常終止售罄或者出現(xiàn)質(zhì)量追溯問(wèn)題被強(qiáng)制終止。狀態(tài)變更統(tǒng)一走一個(gè)batch_status_log表記錄誰(shuí)在什么時(shí)間把狀態(tài)從A改到B原因是什么。溯源系統(tǒng)本身就是為了“可信”所以審計(jì)日志不是可有可無(wú)而是基礎(chǔ)設(shè)施。消費(fèi)者雖然只看最終結(jié)果但你真正應(yīng)對(duì)職業(yè)打假人或者監(jiān)管抽檢時(shí)這套審計(jì)日志才是保命的。3.4 消費(fèi)者掃碼查詢一個(gè)TraceUnit查詢接口背后的SQL邏輯消費(fèi)者掃碼的接口我把路徑設(shè)計(jì)成/trace/scan/{traceCode}。traceCode就是印在包裝上的溯源碼。整個(gè)查詢邏輯我用三層對(duì)象返回TraceBaseVO產(chǎn)品名、批次號(hào)、產(chǎn)地、批次圖片、檢測(cè)狀態(tài)摘要。TraceLogVO種植記錄列表、檢測(cè)報(bào)告列表、包裝記錄列表按時(shí)間倒序。TraceFlowVO出庫(kù)、運(yùn)輸、到達(dá)門(mén)店的時(shí)間點(diǎn)流水。SQL層面我用了兩次查詢而不是一次性大JOIN第一次按trace_code查到trace_unit拿到batch_id第二次按batch_id批量查日志和圖片。原因很簡(jiǎn)單掃碼請(qǐng)求是高頻讀鏈路要短日志查詢是低頻讀分開(kāi)查更容易做緩存。Redis里我直接把掃碼結(jié)果的JSON緩存了2小時(shí)按批次維度緩存同類產(chǎn)品短時(shí)間被反復(fù)掃時(shí)基本不會(huì)打穿數(shù)據(jù)庫(kù)。注意緩存key要按batch_id而不是trace_code設(shè)計(jì)。因?yàn)橐粋€(gè)批次下有幾百上千個(gè)碼如果按trace_code緩存同一個(gè)批次大量碼被掃等于多次重復(fù)查庫(kù)和多次重復(fù)緩存。按批次緩存后第一個(gè)碼觸發(fā)查詢后面的碼直接命中同一份緩存性能壓力驟減。4. 溯源碼生成與防偽讓二維碼背后的數(shù)據(jù)不容易被造假4.1 碼的編碼規(guī)則用不透明ID替代自增主鍵溯源系統(tǒng)一定不能把數(shù)據(jù)庫(kù)自增ID直接拼成二維碼給別人掃。比如trace_unit表的自增ID是10086二維碼內(nèi)容是http://xxx/trace/scan/10086消費(fèi)者一眼就知道這個(gè)系統(tǒng)的碼是可以遍歷的把10087輸入照樣能掃出下一條數(shù)據(jù)。所以我給溯源單元設(shè)計(jì)的編碼是20位數(shù)字字母混合的防偽碼生成規(guī)則前4位產(chǎn)品類別碼如YTFS——煙臺(tái)富士后16位基于IdWorker雪花算法生成的ID做Base32編碼生成后寫(xiě)入trace_code字段并加上唯一索引。雪花算法的好處是全局唯一、趨勢(shì)遞增而且在分布式環(huán)境下不用額外依賴中心發(fā)號(hào)器對(duì)溯源這種跨基地部署的場(chǎng)景很合適。4.2 防偽查詢次數(shù)提示這是溯源系統(tǒng)最容易被忽略的細(xì)節(jié)真正做過(guò)溯源系統(tǒng)的人都會(huì)告訴你不要只做“第一次掃碼顯示詳情”還要做防偽提示。我實(shí)際項(xiàng)目的邏輯是trace_unit表里有個(gè)scan_count字段。消費(fèi)者掃碼后后端在返回詳情前先做一次自增。判斷規(guī)則scan_count 1顯示“正品溯源信息首次查詢”。scan_count 1顯示“該溯源編碼已被查詢N次請(qǐng)確認(rèn)包裝完好”。這個(gè)機(jī)制雖然是簡(jiǎn)單計(jì)數(shù)但在實(shí)際防偽場(chǎng)景里很有震懾力。消費(fèi)者不會(huì)去研究你的數(shù)據(jù)庫(kù)設(shè)計(jì)他看到“已被查詢3次”這個(gè)字眼再結(jié)合包裝實(shí)際情況自己就會(huì)判斷是否遇到二次包裝。我對(duì)這個(gè)功能還有個(gè)小忠告千萬(wàn)別做得太極端比如碼被掃了兩次就報(bào)警因?yàn)橥粋€(gè)消費(fèi)者完全可能反復(fù)掃同一個(gè)碼。給一個(gè)溫和提醒的閾值即可。4.3 二維碼打印別在包裝環(huán)節(jié)掉鏈子后端的碼生成只是第一步真正封裝印刷時(shí)問(wèn)題才多。最常遇到的就是包裝廠拿到的PDF二維碼和實(shí)際URL對(duì)不上或者碼被拉伸變形掃不出來(lái)。建議二維碼圖片統(tǒng)一用后端接口生成2400x2400px的PNG交付給包裝廠并打上“掃碼驗(yàn)證H5不依賴網(wǎng)絡(luò)環(huán)境”的說(shuō)明其實(shí)需要網(wǎng)絡(luò)但至少不要被微信內(nèi)置瀏覽器攔截。另一個(gè)坑是二維碼的糾錯(cuò)級(jí)別我習(xí)慣用H最高糾錯(cuò)級(jí)別因?yàn)檗r(nóng)產(chǎn)品包裝袋/紙箱在運(yùn)輸過(guò)程中必定會(huì)有摩擦、污損糾錯(cuò)級(jí)別高的碼在部分遮擋的情況下依然可以掃出來(lái)。這個(gè)選擇犧牲了一點(diǎn)碼密度但換來(lái)的是終端的識(shí)別率。5. 數(shù)據(jù)庫(kù)設(shè)計(jì)實(shí)戰(zhàn)一張“流水主表”撐起整個(gè)溯源鏈條5.1 核心表的字段清單和關(guān)系說(shuō)明下面直接給關(guān)鍵表結(jié)構(gòu)整理過(guò)的核心字段不是完整版base_info基地表id, name, address, lng, lat, cover_img, contact_name, contact_phone, status。product產(chǎn)品表id, name, category_id, spec, unit, origin_id, brand, desc。batch溯源批次主表id, batch_no, product_id, base_id, plan_qty, real_qty, harvest_date, status, status_reason。trace_unit溯源單元/溯源碼表id, batch_id, trace_code, qr_img_url, scan_count, first_scan_time, create_by, create_time。farm_record農(nóng)事記錄表id, batch_id, record_type, record_date, content, pesticide_name, dosage, safety_interval_day, operator, img_list。detect_report檢測(cè)報(bào)告表id, batch_id, report_no, org_name, report_date, result, pdf_url, items_json。trace_log流轉(zhuǎn)日志表id, batch_id, node_name, operator, operate_desc, img_list, location_name, create_time。batch_status_log批次狀態(tài)變更審計(jì)表id, batch_id, from_status, to_status, operator_id, reason, create_time。這張?jiān)O(shè)計(jì)里最關(guān)鍵的是溯源單元表的trace_code有唯一索引一切查詢都能在200ms內(nèi)完成批次表的狀態(tài)有索引列表頁(yè)的篩選不會(huì)因?yàn)闋顟B(tài)條件而全表掃描。5.2 為什么不用區(qū)塊鏈也敢說(shuō)“數(shù)據(jù)難篡改”一說(shuō)溯源很多人馬上想到區(qū)塊鏈。但實(shí)際做項(xiàng)目我會(huì)坦誠(chéng)地說(shuō)現(xiàn)階段中小型農(nóng)產(chǎn)品溯源區(qū)塊鏈更多是加分項(xiàng)而不是必需項(xiàng)。原因很簡(jiǎn)單你基地內(nèi)部錄入數(shù)據(jù)的人是一樣的鏈上鏈下如果數(shù)據(jù)源在源頭就是人手工錄入的區(qū)塊鏈只能保證“上鏈后沒(méi)人改”不能保證“錄入時(shí)就是真的”。那區(qū)塊鏈的真實(shí)價(jià)值在哪在于多機(jī)構(gòu)間互換信任。如果未來(lái)消費(fèi)者掃碼時(shí)數(shù)據(jù)來(lái)源于“某政府平臺(tái)存證 基地自錄 物流公司軌跡”等多方節(jié)點(diǎn)區(qū)塊鏈的共識(shí)機(jī)制才有實(shí)際意義。在這個(gè)單體的SpringBoot項(xiàng)目里我采用了一個(gè)折中方案對(duì)關(guān)鍵數(shù)據(jù)檢測(cè)報(bào)告、批次狀態(tài)變更、首次掃碼時(shí)間計(jì)算MD5哈希存到獨(dú)立的hash字段里并定期把一批哈希匯總輸出成不可篡改的表單歸檔。這個(gè)方案成本很低但至少能應(yīng)對(duì)“你們系統(tǒng)數(shù)據(jù)是不是隨便改”的質(zhì)疑。5.3 如何設(shè)計(jì)索引避免掃碼查詢打爆數(shù)據(jù)庫(kù)開(kāi)發(fā)者剛做完這類系統(tǒng)時(shí)最容易出現(xiàn)的問(wèn)題是掃碼高峰期trace_unit全表掃碼導(dǎo)致數(shù)據(jù)庫(kù)CPU飆升。我的實(shí)際解決方案是trace_code建唯一索引必須。batch_idstatus建聯(lián)合索引。farm_record.detect_report里的batch_id建普通索引。列表頁(yè)SQL用LIMIT分頁(yè)禁止大偏移量OFFSET 100000這種方式。我在壓測(cè)時(shí)模擬一個(gè)批次2000個(gè)碼高頻掃碼QPS到200左右時(shí)數(shù)據(jù)庫(kù)無(wú)壓力瓶頸反而出在文件服務(wù)器上圖片加載。所以后來(lái)做了圖片CDN加速靜態(tài)資源全部走獨(dú)立域名避免和生產(chǎn)環(huán)境接口爭(zhēng)帶寬。6. 實(shí)操中最容易翻車(chē)的幾個(gè)點(diǎn)我的踩坑記錄和解決過(guò)程6.1 時(shí)間字段的“時(shí)區(qū)幽靈”項(xiàng)目上線第一天就出了個(gè)很低級(jí)的bug農(nóng)戶在山東下午5點(diǎn)錄的農(nóng)事記錄后臺(tái)看是第二天的凌晨1點(diǎn)。查了半天是前端傳的時(shí)間字符串沒(méi)帶時(shí)區(qū)后端用LocalDateTime.parse解析時(shí)默認(rèn)按服務(wù)器時(shí)區(qū)服務(wù)器是UTC就多了8小時(shí)偏差。修復(fù)方案全局約定所有時(shí)間以字符串格式帶時(shí)區(qū)傳輸統(tǒng)一ISO86012024-05-10T17:00:0008:00后端接受后轉(zhuǎn)LocalDateTime存儲(chǔ)。展示層一律按東八區(qū)格式化后再輸出。這個(gè)坑不復(fù)雜但在溯源場(chǎng)景里影響特別大因?yàn)橄M(fèi)者掃碼看到“施肥時(shí)間 2024-05-11 01:00”第一反應(yīng)就是這數(shù)據(jù)是瞎編的。6.2 批次狀態(tài)流轉(zhuǎn)時(shí)前端并發(fā)點(diǎn)擊導(dǎo)致?tīng)顟B(tài)錯(cuò)亂入庫(kù)操作時(shí)倉(cāng)庫(kù)管理員快速連點(diǎn)兩次“確認(rèn)入庫(kù)”后端并發(fā)執(zhí)行兩次都把狀態(tài)改成了“在庫(kù)”而且中間插入了兩條重復(fù)的入庫(kù)日志。原因是我當(dāng)時(shí)只用了一個(gè)狀態(tài)字段校驗(yàn)沒(méi)有事務(wù)鎖。修復(fù)方式是給批次表加了一個(gè)樂(lè)觀鎖版本號(hào)version字段每次更新時(shí)update batch set status3, versionversion1 where id? and versionoldVersion。影響行數(shù)為0時(shí)說(shuō)明版本沖突重放查詢后提示用戶“狀態(tài)已更新請(qǐng)刷新重試”。同時(shí)在入庫(kù)日志插入前用batch_id node_name operate_date做了唯一索引約束雙重保險(xiǎn)。6.3 包裝廠拿不到碼溯源碼導(dǎo)出的權(quán)限和格式設(shè)計(jì)對(duì)接包裝廠時(shí)你肯定不希望業(yè)務(wù)人員直接從庫(kù)里導(dǎo)出裸數(shù)據(jù)。我們做的方案是后臺(tái)“碼管理”頁(yè)面按批次選擇要導(dǎo)出的碼數(shù)量系統(tǒng)會(huì)生成一個(gè)加密的PDF壓縮包里面按包裝規(guī)格排版好二維碼。壓縮包同時(shí)設(shè)置了打開(kāi)密碼由管理員線下告知廠方。PDF排版用Java的iText庫(kù)生成每一頁(yè)有批次號(hào)、產(chǎn)品名、頁(yè)碼水印。這個(gè)模塊剛上線時(shí)有個(gè)設(shè)計(jì)失誤沒(méi)有限制單次導(dǎo)出數(shù)量結(jié)果有人一次性導(dǎo)了10萬(wàn)個(gè)碼直接把PDF生成接口卡死了。后來(lái)加了個(gè)限制單次導(dǎo)出不超過(guò)5000個(gè)且生成任務(wù)走異步線程池完成后通過(guò)郵件推送下載鏈接。6.4 圖片上傳重復(fù)對(duì)象導(dǎo)致存儲(chǔ)膨脹前面提到過(guò)壓縮圖片還有個(gè)問(wèn)題是同一個(gè)批次下農(nóng)戶和質(zhì)檢員可能上傳同一張現(xiàn)場(chǎng)照片微信傳到手機(jī)再上傳落庫(kù)后存了兩份。后來(lái)我在上傳接口里加了文件MD5去重同一個(gè)MD5在bucket中已存在時(shí)只記錄引用不重復(fù)存儲(chǔ)。這個(gè)優(yōu)化在運(yùn)營(yíng)半年后查存儲(chǔ)量時(shí)效果非常明顯大約省了三分之一的空間。6.5 移動(dòng)端弱網(wǎng)場(chǎng)景下掃碼頁(yè)面的降級(jí)方案農(nóng)產(chǎn)品溯源的消費(fèi)者經(jīng)常是在菜市場(chǎng)、路邊攤掃碼網(wǎng)絡(luò)條件不比辦公室。如果后端接口超時(shí)前端如果直接白屏體驗(yàn)極差。我加的降級(jí)方案是后端接口設(shè)置快速失敗連接超時(shí)2秒、讀超時(shí)3秒。如果查詢失敗模板頁(yè)仍渲染基礎(chǔ)產(chǎn)品名和批次號(hào)并顯示“溯源信息加載失敗請(qǐng)稍后重試”。前端埋點(diǎn)監(jiān)聽(tīng)錯(cuò)誤碼方便統(tǒng)計(jì)哪個(gè)批次掃碼頁(yè)失敗率高及時(shí)排查。7. 項(xiàng)目上線后要盯的數(shù)據(jù)這些指標(biāo)比“功能做完了”更重要系統(tǒng)交付以后維護(hù)階段比開(kāi)發(fā)階段更見(jiàn)功力。我給自己定的三個(gè)核心觀察指標(biāo)掃碼轉(zhuǎn)化率掃碼次數(shù)/可掃碼總碼數(shù)低于30%說(shuō)明消費(fèi)者對(duì)碼的興趣不大要么是碼的位置太隱蔽要么是掃碼頁(yè)面價(jià)值感不足。掃碼頁(yè)跳出率打開(kāi)詳情后3秒內(nèi)關(guān)閉比例如果超過(guò)40%大概率詳情頁(yè)加載慢或者信息排版看著不專業(yè)。批次溯源完整率狀態(tài)走到“流通過(guò)程”批次的數(shù)量占比記錄不完整說(shuō)明基地的操作流程沒(méi)有真正被系統(tǒng)約束住。我們有一次復(fù)盤(pán)發(fā)現(xiàn)某個(gè)茶葉基地的掃碼跳出率特別高點(diǎn)開(kāi)一看是詳情頁(yè)放了4張超大尺寸的茶園實(shí)拍圖每張1MB以上移動(dòng)網(wǎng)絡(luò)下一張圖轉(zhuǎn)半天。后來(lái)前端把輪播圖改為“首圖加載 縮略圖點(diǎn)擊查看大圖”跳出率立刻降了十幾個(gè)點(diǎn)。溯源系統(tǒng)這種業(yè)務(wù)消費(fèi)者看的不是功能是信任感和體驗(yàn)這倆都得靠細(xì)節(jié)堆出來(lái)。再分享最后一個(gè)技巧也是我最常對(duì)合作伙伴說(shuō)的溯源系統(tǒng)運(yùn)營(yíng)半年后真正的價(jià)值不在二維碼頁(yè)面而在你手里積累的那張“批次-產(chǎn)地-檢測(cè)”數(shù)據(jù)表和消費(fèi)反饋數(shù)據(jù)。這是你做品牌故事、甚至和渠道談溢價(jià)的底氣。代碼寫(xiě)得好保證的是下限數(shù)據(jù)運(yùn)營(yíng)做得好才讓這套系統(tǒng)有了真正的生命。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
五月婷婷五月天| 婷婷五月天久久| 热91久| 五月激情久久综合| 日本久久视频| 依人大香蕉在钱1| 天天操天天操天天操天天操天天操| 伊人九九热| 99色免费观看全部| 婷婷五月在线视频| 婷婷六月伊人| 色婷婷丁香网| WWW.婷婷五月天.COM| 天天干天天干天天| 991国产精选视频在线播放下载| 国产欧美日韩性爱| 国产9色在线/日韩| 久色88| 久月丁香爱婷婷综合| 99ri网站在线观看| 欧美肉大捧一进一出免费视频| 五月婷婷在线综合| 色五月激情基地| 视频1区2区| 欧美婷婷| 开心五月婷| 99热这里都是精品| 五月丁香婷草| 久久久久久久久久久44| 久久久9久| 八戒青柠影视剧在线观看| h亚洲| 五月丁香六月在线欧美| 婷婷五月综合中文字幕| 国产探花一片区| 久久久婷婷| 另类色视频| 激情六月天婷婷| 色国产五月| 操日视频| 人人操97| 五月丁香六月婷| 久久久久久久久久久jjjj| 婷婷五月色天| 极品人妻VideOssS人妻| 深爱激情五月婷婷| 久久这里只有精品热在99| 六月天六月婷| 亚洲综合激情五月久久| 五月婷婷人人人操| 激情五月综合网| 天天爽天天日| 婷婷中文字幕欧美| AV在线收看| 伊人久久中文网| 色五月激情综合网站| 香蕉网婷婷| 亚洲精品白浆高清久久久久久 | 激情五月小说婷婷| 国产精产国品一二三在观看| av婷婷丁香| 教师性爱毛片| 婷婷操逼| 5月丁香六月情| 五月天激情小说婷婷基地| 五月天伊人日日噜影片AV| 色色综合日韩| 色欲色香综合网| 99爱视频| 精品一二三区久久AAA片| 日韩操人| www.99热这里精品 | 伊人91| 99自拍视频网站| 男人的天堂999| 99热这里只有精品在线免费| 欧美色性色好| 中文字幕一色哟哟哟哟| 五月婷婷六月天| 丁香五月天天| 日本va欧美va国产激情| 五月天激情小说| 久久久全国免费视频| 最新久久99视频网站| 五月丁香六月激情综合| 99热99热| 99热精品在线观看| 九九99精品视频| 天天天久久久| 97人妻碰碰碰久久香蕉| 十二区无码| 丁香五月情| 99热20| 五月婷婷黄色网址| 99操视频| 91久久电影| 日日夜夜干| 五月天婷婷丁香成人网| 色之综合网| 99性爱视频网站| 色爱综合网| 日本乱子人伦在线视频| 五月天激情四射| 色婷婷五月天小说网| 久久精品五月天| 99噜噜噜在线播放| 色婷婷中文字母五月丁香| 激情网综合| 丁香五月偷拍| 久久久这里都是精品| 色五月天视频| 亚洲亚洲人成综合网络| 国产色丁香| 婷婷婷婷婷开心无码播放| 天天天天操| 五月五月婷婷| 狠狠干综合网| 97婷婷五月| 99热免费精品| 综合婷婷| 久久九九99| 成片免费观看大全| 综合色五月| 五月天激情国产综合婷婷婷| 色天天狠狠干| 亚洲精品V天堂中文字幕| 91丨九色丨熟女|老版| 5月丁香六月婷婷| 激情五月丁香五月| 久久aaa| 2017人人操| 激情婷婷护士激情| 久久久久久人妻久久久久久久久久人妻久久久 | 996er热| 99精品高潮| WWW.开心五月天.COM| 久久国产色| 亚洲 欧洲 国产 伦综合| 超碰精品手机在线| 国产99久| 超碰97久久| 五月丁香激情在线| 极品五月天| 天插天啪天啪天啪| 91人人人人人人人| 色五月婷婷老师| 欧美六月婷婷| 激情综合色图| 一区二区中文字幕| 婷婷无五月无码视频| 色情五月丁香婷婷网| 欧美色色色色色色色| 久久婷婷激情四射五月天| 夜夜操,天天撸| 99丁香婷婷综合网| 色婷五月天激情| 激情婷婷黄色五月 | 五月婷婷亚洲色视频| 99精品网址| 五月深爱激情网| 无码字幕中文| 91色色色18| 精品人人操| 五月激情啪啪| 丁香婷婷五色月| 激情www| 91国产精品视频播放| 婷婷五月天啪啪| 涩 五月 婷婷 狠狠| 99爱视频免费| 久久视屏这里只有久久| 这里只有精品96| 激情婷婷丁香色五月| 色综合色综合色综合| 婷婷无码五月天| 丁香婷婷五月激情| www免费在线视频| 色小说五月婷婷| 黄色成人AV在线| 五月综合婷婷五月| 丁香婷婷偷拍| 欧美在线视频免费播放| 99精品国产在热久久| 五月婷婷开心六月激情小说| 婷婷五月综激情| 色综合婷婷| 五月丁香六月香综合激情| AV大片在线观看| 97干欧美| 婷婷六月久久综合导航| 天天干天天拍| 天天色粽合合合合合合合| 丁香啪啪| 色 噜噜 九月 婷婷| 99热免费精品| 天天做天天爱天天要| 国产成人av在线播放| 久久久国产精品黄毛片| 69久久99精品久久久久婷婷| 天天操天天爱天天玩| 韩国19 主播内部福利vip免费播放| 久久99久久久久久| 日韩无码色色| 中文字幕性爱丰满| 欧洲亚洲免费视频区| 久久33视频| 秋霞性爱AV| 久久人妻在线| 人妻videos人妻高清| 免费成人网在线观看| 五月天狠狠| 欧美爆乳一区二区三区| www婷婷色情网| 色婷婷免费视频| 久久精品一区二区三区四区| 九九免费精品在线视频| 色婷婷丁香九月| 99精品视频在线观看| 丁香婷婷五月六月久久| 天天干天天干天天操| 五月丁香色婷婷婷基地| 99久久精| 色吧综合网| 五月丁香另类网| 日本欧美成人片AAAA| 月婷婷婷婷五月| 国产精品-91JQ就要激情网91JQ6.91JQ27.CASA:16888 | 欧美日本免费一道免费视频| 99热这里只有精品99| 婷婷六月综合基地| 狠狠色成人影片| 可以直接看的av网站| 超碰激情网| 热99.com婷婷| 超碰在线个人观看| 综合久久首页| 成年视频免费观看| 大香婷婷| 夜夜爱伊人| 成人免费视频一区| 99在线热| 成人综合视频在线| 丁香五月首页| 人人爽天天爽| 99精品视频在线观看| 五月婷婷中文| 91蜜桃婷婷狠狠久久综合9色| 超碰人人色| 五月天色色婷婷| 久热69| 婷婷丁香五月色| 日日夜夜婷婷| 97视频91| 桃色五月天| 99精品在这里| 成人精品视频99在线观看免费| 久热9| 综合网天天| 丁香五月天啪啪| 五月丁香婷婷色| 五月激情偷拍| 久久久天堂国产精品女人| 久久人妻熟女一区二区| www.韩日视频| 麻豆雪千夏| 久久人人九| 欧洲亚洲免费视频9| 丁香成人五月天| 色九月婷婷| 天天综合在线网| 丁香五月电影| 4438亚洲欧美| 97热在线精品| 亚洲天堂亚洲色色色| 五月天·www·com| 情久久综合五月天| 狠狠色丁香| 日日干日日| 亚洲精级| caop在线视频| 开心五月深爱五月丁香五月激情五月| 六月婷婷视频| 婷婷丁香社区| 色碰碰| 婷婷五月在线免费| 日韩在线aaa| 七七九色| 丁香五月天天久久综合小说| 91色涩| 这里只有精品,日韩视频| 天天综合图片| 97资源欧美日韩大香蕉超碰一区| 欧美性猛交99久久久久99按摩| 九久九精品| 婷婷五月综激情| 99久久99九九99九九九| 99色视| 五月丁香久久| 色色日本欧美| 97综合视频在线| 噜噜色五月| 婷婷丁香五月天色播网站| 一本伊人色婷| 五月丁香在线| 91婷婷在线| 日日夜夜天天爽| AV在线免费播放| 99干日日干| 五月狠狠| 日日艹思思热| 天天色激情| 狠狠色噜噜狠狠狠888了| 99在线精品视频| 91狠狠色丁香婷婷综合久久| 人妻久久婷婷| 婷婷综合网| 婷婷综合在线| 激情综合五月| 91超级碰在线视频| 99久久五月天| 五月婷婷六月丁香色| 九九aV| 日本久久婷| 91精品91久久久久77777| 伊人www22综合色| http://www.sd-xiangsu.com/| www.日日夜夜.com| AAA久久久| 日婷婷久久开心| 国产精品久久久爽爽爽麻豆色哟哟| 日韩超碰在线| 操逼巨乳91| 五月丁香综合色婷婷| 人妻中文在线| 99热这里只有精品9| 碰人人操| 天天影院色| 99热传媒| 婷婷五月天另类网站| www.色五月| 99操| 国产色色视频| 另类的婷婷| 五月伊人网| 婷婷伊人视婷婷婷| 婷婷中文字幕| 婷婷五月天Av| 99热婷婷| 久久亚洲A| 精品久久99码| 26UUU| 免费精品66| 97色色色| 狠狠色激情在线| 久久性爱视频| 97丁香五月天| 婷婷五月天 丁香五月天 裸体| 五月丁香六月婷婷中合网| 色五月大香蕉| 第一区久久网站| 国产AV一区二区三区最新精品 | 色五月婷婷久久| 五月婷婷六月丁香综合| 五月丁香久久| 99精品视频在线观看| 激情五月深爱五月| 影音先锋高清无码资源网| 欧美激情xxxXX| 婷婷色色五月天| 婷婷激情五月天在线视频| 精品国产AV色一区二区深夜久久| 丁香五月亚洲婷婷| 久久丁香九| 亚洲色网络| 亚洲AV无码成人精品区电影网| 激情综合五月婷婷| 狠狠看狠狠| 天天干天天干天天干| 狠狠插.com| 少妇人妻凹凸视频| 丁香五月婷婷婷桃花影院| 黄色三级日本| 五月天另类小说亚洲| 婷婷综合激情| 五月色天情| 丁香玖玖视频大全| 丁香五月影院| 国产激情综合五月久久| 五月丁香A片| 天堂成人A片永久免费网站| 欧美va亚洲va在线播放| 香蕉婷婷色五月| 玖玖资源在线视频| 999热在线视频| 亚洲六月色婷婷| 久久99综合| 六月婷婷激情小说网| 91在线日本| 亚洲va综合va国产va中文| 日日夜夜青青草| 波多野结衣成人作品在线| 色五月综合在线| 色婷婷色五月丁香| 婷婷无码视频| 丁香香蕉婷婷| 极品人妻VIDEOSSS人妻| 99热碰碰| 亚洲人人操BD| 欧美色婷婷| 99热99热在线| 久久婷婷成人视频| 超碰爱爱爱| 99在线免费观看| 婷婷狠狠干| 26uuu.| 欧美婷婷九月| 久久综合66| 99ri精品视频在线观看| 婷婷丁香人妻天天爽| 五月婷婷在线丁香| 男人的天堂五月丁香| 欧美性猛交AAAA片黑人 | 综合99视频| 婷婷色情小说| 五月综合亚洲| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | 日日噜人人人做人| 99ri精品在线| 色九月综合网| 20253AV| 人人爱操| 欧美婷婷五月丁香| 五月天婷婷影院| 日日舔夜夜操| 亚洲精品九九| 夜夜操加勒比| 夜精品无码A片一区二区蜜桃| 国产avapp 网| 欧美大道不卡| 日本天堂免费99| 五月停停丁香| 蜜臀av在线成人电影| 亚洲婷婷在线播放十月| 色色色色五月天| 国产免费av在线| 色婷婷色和| 日韩AV免费看| 9视频在线成人网站| 久久人妻视频| 免费观看全黄做爰的视频| 五月激情偷拍| www超碰| 亚洲成人五月天| 六月婷婷av| 婷婷综合五月| 精品成人在线观看| 亚洲无码另类| 五月天婷婷影院| 激情综合亚洲| 另类视频五月天| 夜夜骑夜夜撸| 五月丁香综合激情| 亚洲V国产V欧美V久久久久久| 丁香五月天激情视频| 亚洲成人一区| 99熟女| 深爱五月天天| 九九机热| 五月丁香婷婷综合| 婷婷天堂综合| 97在线视频观看| 99日韩| 成人做爰A片免费看网站找不到了| www.99热| www,99视频| 夜色.cnm| 五月天色综合| 欧洲激情五月天婷婷| 丁香五月大片| 涩涩涩五月天| AV九九| 99色在线视频| 一本色道久久综合狠狠躁一二三| 中文av在线观看| 影音先锋91| 激情五月深爱五月观看| 5月丁香六月情| 婷婷香五月天| 能看的AV| 婷婷激情六月中文| 色综合区| 特级片神马电影| 天天天天天天操| 久操综合| 五月综合激情啪啪啪啪啪| 激情丁香五月| 都市激情久久| 国产精品色婷婷AV综合色色| 久久色情| 97涩婷婷婷婷基地| 另类专区在线观看| 三级大香蕉网| 在线不卡视频| 热99热久| 婷婷五月天成人动漫 | 噜噜噜久久| 色99视频| 操日本三片99| 五月丁香婷婷成人伊人网| 久久婷婷五月天蜜桃| 久热91| 丁香五月天天久久综合小说| 久久网日本| 99视频这里只有久久精品| 98色花堂98t.R| 激情综合五月天| 99视频在线啪| www.五月天。com| 日韩操逼大片| 久久丁香网| 五月丁香网视频| 激情五月色在线播放| 久久这里有精品| 在线日本www| 婷婷偷拍网| 开心五月婷婷婷美女| 八戒青柠影视剧在线观看| 婷婷第一页| 天天在线天天综合网色| 97操碰视频| 在线不卡AC| 开心五月天私房婷婷| www,天天干| 老师的粉嫩小又紧水又多A片视频| 特级操b片| 天天操夜夜爽| 九九九激情综合| 成人精品在线| 婷婷五月天黄色| 大香人妻| 噜噜久| 极品少妇高潮啪啪AV无码| 影音先锋一区| 色色色婷婷五月天| 99热九九在线| 日本成人噜噜噜| 色婷婷小视频| 99热在线观看免费| 色图亚洲91| 开心四月婷婷在线色播播| 夜夜爱网站| 丁香五月激情网| www.婷婷.com| 婷婷五月激情五月丁香五月| 丁香婷婷深情五月亚洲| 夫妻超碰在线| 丁香五月手机在线| 97色啪| 91精品久久久久、久五月天| OUMEIRIHANCHENGREN| 丁香五月中文字幕久色| 久久丁香综合香蕉| 九九视频这里只有精彩| 狠狠干狠狠操狠狠爱| 99热日韩| 国产黄色av| 色婷婷狠狠| 激情婷婷网| 亚洲激情五月| 九九99精品视频| 激情九月婷婷| 九九99在线观看视频| 97热这里只有精品| 激情五月图| 婷婷色网| 99色一| 狠狠色婷| 久久婷五月综合| 色婷婷婷婷| 99精品在这里| 色五月丁香激情视频| 国产精品天天狠天天看| 五月丁香龟婷婷| 丁香六月婷婷色XXXXX| 五月精品| 伍月婷婷免费视频| 五月天丁香久久综合 | 色婷婷综合丁香五月天| 婷婷九月亚洲| 九九热这里都是精品6| 一本大道熟女人妻中文字幕在线| 五月天婷婷青青草| av免费在线网站| 久操大香蕉| 96人人操人人操人人| 日韩一级一片内射视频4K| 开心激情网五月| 超碰93在线观看| 天天玩夜夜操| 亚洲人人操BD| 激情综合久久| 狠狠婷婷色| 色情五月婷| 婷婷在线五月天观看| 日韩aⅴ视频| 久99久在线观看| 国产色丁香| 亚洲超碰中文字幕| 婷婷五月天开心网| 色五月婷婷激情| 任你爽免费视频| 成人超碰网| 99视频在线播放大全| 97色色-99久久| 九九精品丁香花| 丁香九月激情| 天天插插天天| 欧美综合激情五月丁香| 国产1区2区3区| 亚洲乱码日产精品BD| 精品人妻一区二区| 色婷婷色久综| 日本熟妇精品99| 亚洲黄色网址| 26UUU精品一区二区| 五月天综合图片| 四色综合网| av第一二区| 丰满少妇猛烈A片免费看观看| 99色色| 久久久99精品| 狠狠五月激情在线| av在线免费网站 | 婷婷丁香基地在线| 另类激情五月天。| 丁乡久久| www.夜夜爱.com| 婷婷久草| 五月婷丁香| 夜夜爱网站| 色噜综| 99热日韩这里只有精品| 碰碰91| 久久图色4| 99只有精品9| 久久99网站| 婷婷综合色图| www.日本91| 亚洲色情网站| 久久欧洲综合网| 色婷婷五月基地在线| 91viP在线看| 五月天伊人久久久久| 九月色婷婷婷| 激情超碰网| 337久久| 在线18av | 国产在线aaa片一区二区99| 超碰在线人妻| 9色在线| 久热中文字幕| 九九久久五月天| 少妇人妻人伦A片| 日韩视频99| 天天爽日日爽夜夜爽| 五月天成人在线| 婷婷六月激情啪啪| 97色色色色色色色色色色色色色| 五月深爱婷婷| 人人摸人人射| 色五月成人在线| 久色国产| 五月花激情| 色导航色婷婷五月天在线观看| 色五开心五月五月深深爱| 97好吊操| 噜噜色噜噜网| 99热亚洲精品| 五月开心激情| 五月天激情网图片| 久久婷婷午夜| 激情五月最新网址| 色狠狠综合入口| 1024手机在线观看看片_日韩精品| 一月婷婷色色| 狠狠色丁香久久久婷| 久久最新色色色| 婷婷五月开心中文字幕色| 婷婷涩涩网| 色婷视频| 亚洲综合九九| 久久er99热精品一区二区| 亚洲电影在线观看| 欧美精品久| 亚洲最大在线| 五月丁香六月欧美综合| 丁香美女主播视频在线观看 | 中文字幕在线免费观看视频| 干亚洲天堂| www色中色综合| 五月丁香香蕉| 五月丁香啪啪网| 超碰狠狠干99| 国产精品美女| 综合网激情五月天| 久机视频这只有精品| 久久久香| 精品人妻一区二区三区在| 东京热人妻一区二区三区在线| 在线视频99| 夜夜涩涩涩| 婷婷五月亚洲一本在线丁香| 久99| 9999热免费视频视频| 婷婷欧美综合| 色欲资源网| 91无码视频| 日本女色人人| 五月丁香无码| 激情网婷婷婷| 玖玖热视频| 丁香六月婷婷激情| 大香蕉综合网| 五月婷婷天天| 白人荫道BBWBBB大荫道| 色色色色色色色色色色色色色97| 插少妇综合网| 久久精品婷婷| 影院久久久| 全网最新网黄大秀直播高清,主播国产录屏在线 | 亚洲色区17| 五月婷婷新网站| 色五月婷婷在线观看| 色五月av| 五月天婷婷爱| 九九机热| 国产JK精品白丝AV在线观看| 99久在线精品| 色色色色色色网站| 综合色色五月| 激情色中文| 激情综合国产| 久久一操| 中国激情网| 亚洲精品色| 伊人久久婷| 日婷婷| 操B无码视频国语| 亚洲另类婷婷五月丁香在线播放| 性视频久久| 亚洲国产成人AV在线| 五月丁香六月激情网| 色色亚洲视频| 变态另类9| 五月丁香婷婷网在线在线| 婷婷干| 无码激情精品色婷婷久久久久| 久久激情五月婷婷| 日韩成人无码人妻| 五月婷婷色影院| 色9月| 99视频精品全部观看10| 人妻在线观看视频| 麻豆五月丁香婷婷| 一级片操逼视频| 五月丁香六月欧美综合| 六月天婷婷| 噜噜噜噜噜久| 婷婷99| 91精品久久久久久77777| 五月天婷婷免费| 久久艹99| 色五月琪琪| 激情综合网五月丁香| 久久婷婷色色| 激情综合区| 超碰操网| www.丁香五月| 成人丁香五月| 日本天天综合| av一级棒av| 五月丁香成人版| 亚洲婷婷性爱| 五月色丁香视频精品| 丁香五月激情五月| 丁香婷婷六月| www.99热视频| 异能之下短剧免费观看全集| 精品人妻一区| 南京搡BBBB搡BBBB| 男人的天堂婷婷色五月| 国产VA亚洲VA96| 停停综合色色| 91久操| 少妇日麻屄| 成人草榴视频| 五月丁香五月综合欧美| 91九色丨国产丨爆乳| 99热超碰在线| 夜夜操夜夜姧| 亚洲无码免费看| 99热精品在线观看| 五月天色色网站| 99色综合| 婷婷五月天中文字幕| 综合色网站| 人妻久久久久久久 | 婷婷99狠狠躁天天躁中文| 嫩草视频在线观看| 激情精品久久| 欧美三级视频| 曰曰久久| 97激情五月天| 涩 五月 婷婷 狠狠| 五月伊人网| 五月婷婷丁香伦理网| 99资源人人| 色色综合网站| 天天狠狠色| 婷婷激情在线| 国产精产国品一二三在观看| 婷婷五月六月丁香| 五月天天丁香婷婷在线中| 五月天婷婷丁香成人网| 色呦呦美女| 五月婷色丁香| 婷婷射图| 伊人婷婷福利网| 伊人久久大香蕉网| 丁香五月天婷婷中文| 91人人澡人人爽人人看| 欧美性生交xXxX久久久| 狠狠色大香蕉| 亚洲99视频| 99自拍视频网站| 久久婷婷五月综合色区| 91久久1118| 久久婷婷五月综合色和| 99这里只有精品视频免费| 久久99草五月婷婷| www.色婷婷.com| 26uuu在线观看| 二人电影免费版在线观看| 五月天激情图片网| 丰满少妇猛烈A片免费看观看 | 成人婷99最新| 殴美97色| 男男野外做爰全过程69| 99久久久免费| 26uuu欧美亚洲日韩| 成人在线网| 91久久九九| 国产真实乱了老女人视频| 亚洲操逼片| 26UUU欧美| 亚洲无码成人性爰网| 在线成人网址| 婷婷五月无码| 丁香五月色情av| 思思热在线视频精品| 色情五月综合婷婷| 激情五月天在线免费美女视频| 3p日韩网站视频| 99婷婷五月天| 色色色干| 久久伦乱| 激情综合色婷婷啪啪六月天| 日本波多野结衣视频| 国产全是老熟女太爽了| 激情开心五月天| 亚洲av网站| 国产97色在线 | 日韩| 六月丁香VA| 亚洲亚洲亚洲AAAAAA| 狠狠操在线视频| 激情综合网,婷婷| 久久精品爱爱| 日韩婷婷五月| 久久狠狠欧美| 色优久久| 无码地址| WWW、日本色丁香co m| 丁香五月综合高清在线| 99自拍视频在线| 综合99久久| 丁香六月久久| 婷婷丁香在线| 国产片天天爽夜夜爽| 色婷婷成人| 丁香六月婷婷一区| 无码四色色色| 久婷婷五月激情| 天天日夜夜B久久| 99re在线观看视频| 夜夜夜夜操| 久久人妻情侣| 精品三区影院| 婷婷五月色情天| 婷婷五月丁香六月| 婷婷五月丁香综合激情| 亚洲啪啪视频| 五月丁香影视| 另类少妇人与禽zOZZ0性伦| 婷婷综合五月天| 欧美视频五区| 人人色AV| 婷婷五月色| 久草热久草在线视频| 99久久国产宗和精品1上映| 欧美激情综合五月色丁香| 大香蕉久久视频久久视频 | 亚洲乱码在线观看| 任你艹| 99热热九九| tingtingzonghewang| 深爱激情网五月天| 99.N在线视频| AV性爱在线| 成人做爰A片免费看网站找不到了| 亚洲激情四射色| 久久六月综合| 久久性爱视频| 天天插轮理| 天天狠狠夜夜狠狠2023| 婷婷性爱网| 人妻体体内射精一区二区| 国产av网| 九九99九九99九九99视频网| 翔田千里aV中文字幕| 快色t v在线入口| AV成人在线播放| 综合色播| 婷婷狠狠狠爱| 国产亚洲99久久精品| 深爱开心激情网| 第五色婷婷| 亚洲综合在线视频| 五月婷久久综合| 日韩ac不卡无码| 国产片色| 国产成人网站在线观看| 亚洲网在线观看| 久热AA| 色五月婷婷视频| 99婷婷国产最新视频| AA片在线观看视频在线播放| 五月婷婷六月丁香首页| 五月天国产成人| 色播五月婷婷| 色噜噜综合网| 丁香婷婷婷五月综合色情| 中文网AV| 婷婷 丁香 精品| 国产精品天天狠天天看| 色婷婷五月天成人网| 思思久久96热在精品国产,| 色爽九九| 操日本99| 国内裸舞二区| 亚洲婷婷91丁香| 99热国产在线| 色五月无码| 色日本综合| 91聚色综合网| 色综久久AV| 99热主页日本| 欧在线一区| 欧美丁香六月在线观看视频| 色婷婷六月天| 亚洲成人精品三区| 六月香五月婷| 色婷婷丁香五月天| 婷婷五月网图片区| 99热99热不卡| 香蕉AV777XXX色综合一区| 色色激情网| 久久婷婷视频| 337久久| 五月丁香在线婷婷蜜桃| 婷婷五月色天| 超碰在线免费| 色五月综合| 色色色1网址| 综合在线丁香五月| 五月天色图| 久久曰曰| 成人一级片| 五月狠狠| 五月丁香免费看| 九九九干精品| 美女激情婷婷| 亚洲亚洲人成综合网络| 激情久久四色| 五月激情影院| 五月天社区| 婷婷色导航| 51成人| 成人在线精品| 第五婷婷伊人丁香色| 五月丁香色综合| 97艹| 婷婷五月天久久| 综合激情九月婷婷,激情综合婷婷中文字 | 天天日天天摸天天| 婷婷五月丁香五月| 月月AV| 婷色五月天| 国产va在线视频| 天天射影院| 色五月婷婷在线视频| 涩涩五月天| 嫩草综合网| 成人免费120分钟啪啪| 亚洲丁香五月深爱五月| 国产肥白大熟妇BBBB视频| 五月婷婷这里都是精品| 少妇人妻丰满做爰XXX| 日日干夜夜撸夜夜骑| 中文字幕乱码亚洲精品一区| 丁香婷婷色五月合集| 丁香狠狠色婷婷久久无码视频| 婷婷六月激情在线视频| 色yeye色综合| 天天干天天爽| 在线视频你懂得| 很很干天天干| 五月综亚洲| 99热最新国内| 五月天伊人| 久久久久久综合88| 99这里| 精品九九视频| 综合九九日本| 亚洲精品99| 99热20| 激情五月婷婷丁香综合网| 五月天色丁香| 日良久久| 中文字幕乱码亚洲精品一区| 激情五月丁香六月| 五月婷婷综合久久| 性做久久久久久久免费看| anquye五月| 色婷婷五月天偷拍| 久久婷婷五月天| 开心五月综合| 色婷久九| 极品人妻VIDEOSSS人妻| 性日本精品| 另类图片色五月| 极品人妻VIDEOSSS人妻| 日本五月婷婷| 五月丁香六月在线欧美| 影音先锋日本三级资源| 久久久久久人妻| WWW夜夜| 色播色丁香五月| 五月激情婷婷在线| 能直接看的AV网站| 五月婷婷色影院| 色www久视频| 超碰a女人的天堂| 色。 婷婷婷| www.久久婷婷| 婷婷五月天影院| 国产视频婷婷| 蜜臀av无码久久久久久久久| 日本玖玖在线| 丁香六月婷婷| 狠狠草在线观看| 激情五月深爱五月| 五月天婷婷激情网| 免费无码毛片一区二区A片| 十一月婷婷激情四射| 综合激情五月丁香9999久久精| 99久久婷婷综合| 99操逼| 中文久久婷婷| 六月狠狠综合| 狠狠色五月激情| 成人资源在线| 性爱激情五月| 99精品在线观看视频| 五月丁香啪啪| 性爱电影科技贸易有限公司| 久久婷婷91| 99热在线播放精品| 国产精品第一国产精品| 婷婷五月天激情电影| 亚洲无码九九| 99er6| 亚洲AV成人片无码网站| 五月婷婷丁香五月| 任你躁XXXXX麻豆精品| 亚洲这里只有精品| 久re热视频| 涩五月色婷婷| 国产探花AV在线| 五月激情丁香久久综合网| 91人操| 日韩淑女人妻luan伦激情精品一区二| 九九综合九| 天堂成人A片永久免费网站 | 丁香五月激情月| 九九热a| 天堂中文国产| 激情九九六月激情免费视频| 99热99精品在线观看| 99热精品在线| 99热这里只有精品首页| 99九九在线| 五月天久久网站| 人人干人人操人人摸| 狠狠五月激情婷婷直播片| 欧美久久五月婷婷| 六月激情婷婷色| 五月丁香六月婷婷精品| 久久综合爱| 日本系列_4页_777FP| 天天综合网~91| 伊人久热91网| 日韩成人电泉AV| 黄色aa观看aaguochan| 婷婷在线五月综合| 五月婷婷电影院| 成人草榴视频| 97超美国视频在线观看| 亚洲黄色网址| 久久婷青青草原| 伊人丁香在线| 99丁香婷婷综合网| 伊人婷婷99热精品| 久久婷婷五月综合色区| 秋霞av吧| 黄色激情网站在线观看| 天天操天天插天天射| 色综合女人99| 在线成人av播放| 天天干天天操天天射 | 婷婷六月激情| 五月丁香六月激情| 庭庭久久内射| 日韩啪啪网| 丁香六月综合激情| 99热在线观看| 九月激情婷婷丁香| av一区二区电影免费在线观看| 五月停亭久久电影| 久久婷婷草| 黄网免费观看| 五月丁香激情片| 2025天天爽天天摸| 成人性爱无码| 天天日天天插| 亚洲1区| 丁香六月天| AV亚洲在线| 91久久色| 99,色| 呦呦v线| 色亭亭五月天丁香综合AV - 百度 - 百度 | 玖玖玖婷婷婷| 激情婷婷久久| 涩综合在线| 99色最新在线视频网站| 久久五月丁香| 色色色色色综合| 精品久久久91久久影视网| 成人 九九九九| 99热婷婷| 五月天婷婷久久综合| 婷婷五月激情中文字幕| 婷婷五月天精品| 射满了还射免费在线观看 -午夜版全集-新视觉影院| 99久久婷婷综合| 久久伦乱| 激情纯色婷婷五月天在线不卡视频| 夜丁香五月婷婷| 99在线69| 久久五月婷天天干| 九九人人自拍| 另类图片五月天婷婷| 激情五月,色播五月| 五月丁香黄色视频| 日韩一级| 大香蕉520| 天天操夜夜爽歪歪| 成人看片网站| 啪啪操网| 《诡秘之主》在线观看| 丁香六月激情网C0W| 五月天激情亚洲| 草久私拍| 精a品a视a频| 五月天播播| 嫩草AV久久伊人妇女超级A| 色噜久| 丁香六月婷婷高清| 玖玖在线视| 99在线视频在线观看| 人妻激情综合| 六六久久黄色| 婷婷免费精品视频| 综合网亚洲| 国产一级视频a| 色婷婷基地| 婷婷五月综合亚洲| 亚洲国产精品SUV| 久久人操| 日韩aaa| 色婷婷8| 天天插天天插天天日| 超碰爱爱爱| 久久丁香综合精品综合| 五月天激日本色情在线| 五月丁香六月成人| 人操91在线| 丁香五月狠狠综合欧美| 亚洲AV免费在线| 狠狠干在线| A网在线欧洲| 五月丁香啪啪啪| 色婷婷婷婷| 婷婷成人五月天| 亚洲精品99| 超爽内射| 99精品视频免费观看,| 午夜大香蕉| 99日精品视频| 五月天激情网开心网| 9国产在线视频| 婷婷五月丁香影院| 超碰免费人人| 五月婷婷影| 色五月激情网| 丁香影院五月综合| 婷婷五月丁香成人| 91综合在线| 高潮毛片遮挡费高一百度| 综合色99| 日本三久久| 91青娱乐青青草| 色五月自偷自拍婷婷婷婷| 婷婷丁香色五月久久88| 精品人妻在线免费观看| 五月天婷婷在看| 在线另类| 天天拍夜夜撸| 亚洲黄色影视| 97操碰| 九九AV| 这里只有精品视频222| 丁香色色色| 六月婷婷综合| 五月天大香蕉| 婷婷在线精品| 人妻久久久久久久 | 色综合久久88色综合天天看| 91久久国产综合久久| 五月天婷婷无码| 综合九九中文字幕| 久久久无码精品成人A片小说| 高清国产AV| 久久久ww| av中文在线| 欧洲色色|