Help
RSS
API
Feed
Maltego
Contact
Domain > blog.fredliang.cn
×
More information on this domain is in
AlienVault OTX
Is this malicious?
Yes
No
DNS Resolutions
Date
IP Address
2018-07-10
117.25.139.132
(
ClassC
)
2022-12-01
3.231.251.25
(
ClassC
)
2024-08-30
43.175.152.68
(
ClassC
)
2024-08-30
101.33.11.219
(
ClassC
)
2025-11-17
43.159.79.166
(
ClassC
)
Port 443
HTTP/1.1 200 OKLast-Modified: Tue, 16 Aug 2022 21:34:07 GMTEtag: d5fe4afdad7761771bd574c7f890b8daContent-Type: text/htmlDate: Mon, 05 May 2025 10:17:10 GMTx-cos-hash-crc64ecma: 10556010663345456843x-cos-meta-md5: d5fe4afdad7761771bd574c7f890b8dax-cos-request-id: NjgxODkwMjZfY2FlZTk4MWVfMTM2NTVfMTE3NDc0OQContent-Length: 54484Accept-Ranges: bytesX-NWS-LOG-UUID: 9357169434705673958Connection: keep-aliveX-Cache-Lookup: Cache Refresh Hitserver: potato-server/v0.0.1 !doctype html>html langzh-cn>head>meta namegenerator contentHugo 0.101.0>meta charsetutf-8>meta http-equivx-ua-compatible contentIEedge,chrome1>meta nameviewport contentwidthdevice-width,initial-scale1>meta nametheme-color content#ffffff>meta nameauthor contentFred Liang>meta namedescription contentThoughts, ideas and notes>link relapple-touch-icon href/images/icon/apple-touch-icon.png>link relpreconnect hrefhttps://g.alicdn.com>link relpreconnect hrefhttps://www.google-analytics.com crossorigin>link relpreconnect hrefhttps://www.googletagmanager.com>link relcanonical hrefhttps://blog.fredliang.cn/>script>(function(e,t,n,s,o){eses||,es.push({gtm.start:(new Date).getTime(),event:gtm.js});var at.getElementsByTagName(n)0,it.createElement(n),rs!dataLayer?&l+s:;i.async!0,i.srchttps://www.googletagmanager.com/gtm.js?id+o+r,a.parentNode.insertBefore(i,a)})(window,document,script,dataLayer,GTM-MZPCR2F)/script>link relalternate typeapplication/rss+xml hrefhttps://blog.fredliang.cn/feed.xml>title>Freds Blog/title>link relshortcut icon hrefhttps://blog.fredliang.cn/images/favicon.ico>style>@-webkit-keyframes fadeInDown{0%{-webkit-transform:translate3d(0,-100%,0);opacity:0;transform:translate3d(0,-100%,0)}to{-webkit-transform:translateZ(0);opacity:1;transform:translateZ(0)}}@keyframes fadeInDown{0%{-webkit-transform:translate3d(0,-100%,0);opacity:0;transform:translate3d(0,-100%,0)}to{-webkit-transform:translateZ(0);opacity:1;transform:translateZ(0)}}.fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}.animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both}@media(print),(prefers-reduced-motion:reduce){.animated{-webkit-animation-duration:1ms!important;animation-duration:1ms!important;-webkit-transition-duration:1ms!important;transition-duration:1ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important}}/style>style>@charset UTF-8;@font-face{font-family:product sans;font-display:swap;src:url(/fonts/ProductSans-Light.eot);src:local(Product Sans),local(ProductSans-Light),url(/fonts/ProductSans-Light.eot?#iefix)format(embedded-opentype),url(/fonts/ProductSans-Light.woff2)format(woff2),url(/fonts/ProductSans-Light.woff)format(woff),url(/fonts/ProductSans-Light.ttf)format(truetype);font-weight:300;font-style:normal}@font-face{font-family:product sans;font-display:swap;src:url(/fonts/ProductSans-Thin.woff2);src:local(Product Sans),local(ProductSans-Thin),url(/fonts/ProductSans-Thin.eot?#iefix)format(embedded-opentype),url(/fonts/ProductSans-Thin.woff2)format(woff2),url(/fonts/ProductSans-Thin.woff)format(woff),url(/fonts/ProductSans-Thin.ttf)format(truetype);font-weight:100;font-style:normal}@font-face{font-family:product sans;font-display:swap;src:url(/fonts/ProductSans-Regular.woff2);src:local(Product Sans),local(ProductSans-Regular),url(/fonts/ProductSans-Regular.eot?#iefix)format(embedded-opentype),url(/fonts/ProductSans-Regular.woff2)format(woff2),url(/fonts/ProductSans-Regular.woff)format(woff),url(/fonts/ProductSans-Regular.ttf)format(truetype),url(/fonts/ProductSans-Regular.svg#ProductSans-Regular)format(svg);font-weight:400;font-style:normal}@font-face{font-family:product sans;font-display:swap;src:url(/fonts/ProductSans-Bold.woff2);src:local(Product Sans Bold),local(ProductSans-Bold),local(Product Sans),url(/fonts/ProductSans-Bold.eot?#iefix)format(embedded-opentype),url(/fonts/ProductSans-Bold.woff2)format(woff2),url(/fonts/ProductSans-Bold.woff)format(woff),url(/fonts/ProductSans-Bold.ttf)format(truetype),url(/fonts/ProductSans-Bold.svg#ProductSans-Bold)format(svg);font-weight:700;font-style:normal}::selection{background:rgba(0,0,0,.1)}html,body{height:100%}html{background-color:#fafafa;-webkit-font-smoothing:antialiased}body{color:#333;font-family:product sans,pingfang sc,helvetica neue,sf pro sc,sf pro display,sf pro icons,helvetica,arial,sans-serif;font-size:16px;width:100%;background-color:#fafafa;margin:0;padding:0}p{line-height:1.9em;font-weight:400;margin:0}a{text-decoration:none}a:link,a:visited{opacity:1;-webkit-transition:all .15s linear;-moz-transition:all .15s linear;-o-transition:all .15s linear;transition:all .15s linear;color:#424242}a:hover,a:active{color:#555}h1,h2,h3,h4,h5,h6{text-rendering:optimizeLegibility}hr{border:1px solid #f3f3f3}a{text-decoration:none}ul{list-style:none}a,input,button{outline:none;-webkit-tap-highlight-color:transparent}button{user-select:none}.main{min-height:82vh;background:#fafafa;margin:0}.content{height:auto;margin:0;display:flex;justify-content:center}.content twitter-widget{text-align:center;margin:auto;padding-bottom:20px}.content .post_page,.content .wrapper,.content .list_with_title,.content .page_tags{width:56%;display:block;flex-grow:0;order:0}.content aside{flex-grow:1;width:0}.content aside.right{order:1}.content aside.left{order:-1}.content aside.toc{color:rgba(0,0,0,.2);margin:50px auto auto 40px}.content aside.toc .reading{background:rgba(0,0,0,.1);color:#232323}.content aside.toc #toc_content{transition-duration:1.5s;transition:background-color .15s linear;overflow:hidden}.content aside.toc #toc_content nav{position:relative;max-height:75vh;overflow-y:scroll;overflow-x:hidden}.content aside.toc .fixed{position:fixed;top:40px}.content aside.toc h3{margin:16px 0}.content aside.toc ul{padding:0;margin:0;width:180px;overflow:hidden;white-space:nowrap}.content aside.toc ul li{width:180px;overflow:hidden;text-overflow:ellipsis;overflow:hidden;padding:3px 0}.content aside.toc ul li ul li ul{padding-left:10px}.content aside.toc ul a{border-radius:6px;padding:4px;color:rgba(0,0,0,.4);font-weight:700}.content aside.toc ul a:hover{background-color:rgba(0,0,0,5%)}.content .post_page{display:block;flex-grow:0}.content .post_page .post{box-shadow:0 8px 20px rgba(0,0,0,7%)}.content .post_page .doc_comments{margin:0;padding-bottom:0}.content .post_page .doc_comments .comments_block_title{font-family:noto serif,noto serif cjk tc,source han serif tc,songti tc,serif;font-size:24px;font-weight:700}.list_with_title .container{width:56%;margin:0 auto}.nav{display:flex;background:#fff;box-shadow:0 2px 20px rgba(0,0,0,.096)}.nav .nav_left{width:auto;flex-grow:1;display:flex;align-items:center;justify-content:center;margin:0;width:0}.nav .nav_left .site_title img{width:3rem}.nav .nav_right{flex-grow:1}.nav .nav_container{height:4rem;margin:0 auto;width:56%;flex-grow:0;display:flex;align-items:center}.nav .nav_container .menu_icon{padding:10px;float:left}.nav .nav_container .menu_icon a{cursor:pointer}.nav .nav_container .site_nav{float:left;font-family:product sans,google sans,Roboto,Arial,Helvetica,sans-serif}.nav .nav_container .site_nav .nav_active{font-weight:700}.nav .nav_container .site_nav ul{list-style:none;margin:0;padding:0;float:right}.nav .nav_container .site_nav li,.nav .nav_container .site_nav a{position:relative}.nav .nav_container .site_nav li{float:left}.nav .nav_container .site_nav a{display:block;white-space:nowrap;margin:10px 40px 10px 0;font-size:1.1rem;position:relative}.nav .nav_container .site_nav a::before{content:;position:absolute;bottom:-3px;left:0;right:0;height:2px;background-color:rgba(0,0,0,.6);transform-origin:bottom right;transform:scaleX(0);transition:transform .5s ease}.nav .nav_container .site_nav a:hover::before{transform-origin:bottom left;transform:scaleX(1)}.post{background-color:#fff;margin:50px 0;background:#fff;border:3rem solid #fff;border-bottom:2.5rem solid #fff;border-top:3rem solid #fff;box-shadow:0 8px 20px rgba(0,0,0,7%);transition:.3s;border-radius:10px;padding:0}.post:hover{box-shadow:0 12px 36px rgba(0,0,0,.12)}.post .post_title{padding-bottom:16px}.post .post_title h2{letter-spacing:1px;font-size:2rem;line-height:1;font-weight:600;color:#1f1f1f;margin:0 0 6px}.post .post_title a{text-decoration:none;letter-spacing:1px;color:#1f1f1f;font-size:2rem;line-height:2.4rem}.post .post_title span{color:rgba(0,0,0,.44);font-size:14px}.post .post_title span.date{font-size:12px}.post .post_detail .meta{max-width:100%;height:30px;font-family:product sans,google sans,Roboto,Arial,Helvetica,sans-serif;font-size:10px;color:rgba(0,0,0,.6);letter-spacing:0}.post .post_detail .meta .info{float:left;font-size:13px;display:flex;align-items:center}.post .post_detail .meta .info i.date{margin-right:10px}.post .post_detail .meta .field{display:flex;align-items:center;margin-right:10px;white-space:nowrap}.post .post_detail .meta .field i{margin-right:10px}.post .post_detail_title h2{font-size:1.5rem;font-weight:700}.post .post_detail_title{padding-bottom:0}.post .list .post_content{color:rgba(0,0,0,.6)}.post .list .post_content p{line-height:2em;letter-spacing:0;padding-bottom:0!important}.post .post_content{word-break:normal;font-size:16px;color:#555;letter-spacing:0}.post .post_content .plyr{margin:10px 0}.post .post_content ul li{list-style:disc}.post .post_content p{margin:0 0 1.5em;line-height:2em;letter-spacing:.7px}.post .post_content a{text-decoration:none;letter-spacing:1px;color:#0070f2}.post .post_content a:hover{color:#0061d2}.post .read_info{margin-top:1.5rem;display:flex;justify-content:space-between}.post .read_info span{font-family:product sans,google sans,Roboto,Arial,Helvetica,sans-serif;font-size:20px;margin-right:4px;letter-spacing:0}.post .read_info .read_more{display:flex;align-items:center;color:#0070f2;margin-right:5px}.post .read_info .read_more i{color:#0070f2;font-size:20px;transition-duration:.3s;transition-timing-function:ease-out}.post .read_info .read_more i:hover{transform:translate(2px,0)}.post .read_info .read_time{color:rgba(0,0,0,.54);font-weight:400;text-align:right}.post .read_info .read_time span{font-size:16px}.post .post_footer{border-bottom:.5px solid rgba(0,0,0,.2);padding-bottom:40px}.post .post_footer .field a{font-size:14px}.tag{display:inline;padding:2px 4px 4px;border-radius:5px;margin:0;transition-duration:.4s}.tag:hover{box-shadow:0 2px 15px rgba(0,0,0,.14)}.field{font-family:product sans,google sans,Roboto,Arial,Helvetica,sans-serif}.field a{text-decoration:none}.field a:hover{color:#1f1f1f}.field svg{width:12px;height:12px}.field a,.field svg{vertical-align:middle}.field a{margin-left:0}.page_tags{text-align:center;margin:50px 0}.page_tags ul li{margin:10px 15px;display:inline-block;font-size:1em}.page_tags ul li a .tag_button{text-transform:capitalize;padding:10px 15px 10px 25px;background:#fff;font-weight:700;box-shadow:0 8px 20px rgba(0,0,0,.096);border-radius:10px;transition-duration:.5s}.page_tags ul li a .tag_button:hover{transform:translateY(-3px);box-shadow:0 10px 20px rgba(0,0,0,.12);color:#0070f2}.page_tags .terms_count{display:inline-block;position:relative;top:-8px;right:-2px;color:#c5c5c5;font-size:12px}.page_tags ul{margin:0;padding:0}.footer{clear:both;text-align:center;min-height:18vh;background:#fff;border-top:1px solid rgba(0,0,0,.1);display:flex;align-items:center}.footer>.footer_info{width:100%}.footer p{font-family:product sans,google sans,Roboto,Arial,Helvetica,sans-serif;font-size:18px;color:rgba(0,0,0,.54);letter-spacing:0;text-align:center}.footer p a{transition-duration:.2s;font-family:product sans,google sans,Roboto,Arial,Helvetica,sans-serif;font-weight:700;color:rgba(0,0,0,.54)}.footer p a:hover{color:#000}.footer .my_socials a i{transition-duration:.5s;color:rgba(0,0,0,.5);font-size:15px;margin:0 2px}.footer .my_socials a i:hover{color:#000}.footer .powered_by{margin-top:-7px;font-size:16px}.footer .beian{font-size:13px;font-weight:700;font-family:noto serif,noto serif cjk tc,source han serif tc,songti tc,serif;letter-spacing:1px}.footer .beian a{font-family:noto serif,noto serif cjk tc,source han serif tc,songti tc,serif;color:rgba(0,0,0,.55)}.list_with_title{font-size:14px;margin:20px 0 0;padding:0}.list_with_title li{list-style-type:none;padding:0}.list_with_title .listing_title{font-size:2.6rem;color:#6d6d6d;font-family:product sans,google sans,Roboto,Arial,Helvetica,sans-serif;font-weight:700;padding-top:10px;line-height:2.2em}.list_with_title .listing{margin:0 0 30px;line-height:2.1}.list_with_title .listing .listing_item{background-color:#fff;margin:10px 0;border-radius:10px;box-shadow:0 0 10px rgba(0,0,0,.096);padding:.6rem 1rem;transition:color 2s,box-shadow .3s,transform .5s;z-index:0}.list_with_title .listing .listing_item:last-child{border-bottom:0}.list_with_title .listing .listing_item:hover{box-shadow:0 0 20px rgba(0,0,0,.15);z-index:100;transform:translateY(-1.5px)}.list_with_title .listing .listing_item:hover .listing_post a,.list_with_title .listing .listing_item:hover .listing_post:hover a{color:#0061d2}.list_with_title .listing .listing_item .listing_post{color:#424242}.list_with_title .listing .listing_item .listing_post a{transition:color .1s;display:inline-block;width:85%;color:#424242;font-weight:700}.list_with_title .listing .listing_item .listing_post .post_time{float:right;color:#757575;font-size:14px;font-family:product sans,google sans,Roboto,Arial,Helvetica,sans-serif}.list_with_title .listing .listing_item .listing_post a:hover{color:#1f1f1f}.pagination{padding-bottom:60px;color:#666;font-size:14px}.pagination a{color:#333;text-decoration:none}.pagination a .pagination_button{margin-bottom:36px;padding:1rem;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.096);border-radius:10px;transition:.3s ease-in-out;display:flex;align-items:center}.pagination a .pagination_button:hover,.pagination a .pagination_button:active{transform:translateY(-3px);box-shadow:0 10px 20px rgba(0,0,0,.12);color:#0070f2;font-weight:400}.pagination .pre{float:left}.pagination .next{float:right}.markdown{line-height:1.8em;word-wrap:break-word;word-break:normal;overflow-wrap:break-word;font-family:pingfang sc,helvetica neue,sf pro sc,sf pro display,sf pro icons,helvetica,arial,sans-serif}.markdown ul,.markdown ol,.markdown dl{padding-inline-start:24px;margin:.2em 0 .8em}.markdown h1,.markdown h2,.markdown h3,.markdown h4,.markdown h5,.markdown h6{color:#000}.markdown h1:before,.markdown h2:before{position:absolute;transform:translate(-130%);display:block;content:#;color:rgba(0,0,0,.1)}.markdown h3:before,.markdown h4:before,.markdown h5:before,.markdown h6:before{position:absolute;transform:translate(-120%);display:block;content:##;color:rgba(0,0,0,.1)}.markdown h1{margin:1.5em 0;font-size:1.6em}.markdown h2{margin:1.8em 0 1em;font-size:1.4em}.markdown h3{margin:1em 0 .6em;font-size:1.2em}.markdown h4{margin:.5em 0 .3em;font-size:1em}.markdown pre,.markdown code{font-family:Monaco,roboto mono,Menlo,courier,monospace;font-size:.9em;border:none;margin:0 3px}.markdown pre{margin-top:1.2em;margin-bottom:2.2em;padding:15px 20px;display:block;overflow:auto;white-space:pre;word-wrap:break-word}.markdown code{color:#666;background-color:#2728221a;padding:4px 5px;border-radius:2px;white-space:nowrap}.markdown pre code{padding:0}.markdown blockquote p{white-space:normal}.markdown pre::-webkit-scrollbar{height:10px}.markdown pre::-webkit-scrollbar-button{display:none}.markdown pre::-webkit-scrollbar-track{background:#fff}.markdown pre::-webkit-scrollbar-thumb{min-height:1rem;background-color:#ccc;background-clip:padding-box;border:3px solid #fdfdfd;border-radius:5px}.markdown pre::-webkit-scrollbar-thumb:active{background-color:#999;border-width:2px}.markdown blockquote{-moz-box-sizing:border-box;box-sizing:border-box;margin:2.5em 0;padding:0 0 0 50px;font-style:italic;color:#555;border-left:none}.markdown blockquote:before{content:“;display:block;font-family:times,sans-serif;font-style:normal;font-size:48px;color:#444;font-weight:700;line-height:30px;margin-left:-50px;position:absolute}.markdown b,.markdown em{padding:1px 2px;background-color:#03b4f821;font-weight:400}.markdown strong{padding:1px 2px;font-weight:bolder}.markdown table{display:block;width:100%;overflow:auto;word-break:normal;word-break:keep-all;border-collapse:collapse;border-spacing:0;margin:0 0 1.5em}.markdown table tr{background-color:#fff;border-top:1px solid #ccc}.markdown table tr:nth-child(2n){background-color:#f8f8f8}.markdown table th,.markdown table td{padding:6px 13px;border:1px solid #ddd}.markdown .fancybox{text-align:center}.markdown img{max-width:100%;height:auto}a.back_to_top{text-decoration:none;position:fixed;bottom:40px;right:30px;background:#f0f0f0;height:40px;width:40px;border-radius:50%;line-height:36px;font-size:18px;text-align:center;transition-duration:.5s;transition-property:background-color;display:none}a.back_to_top span{color:#888}a.back_to_top:hover{cursor:pointer;background:#dfdfdf}a.back_to_top:hover span{color:#555}#notify{display:none;position:fixed;bottom:-100px;left:20px;min-width:300px;max-width:600px;min-height:30px;display:flex;align-items:center;padding:20px;font-family:product san;font-weight:700;color:#000;background-color:#fff;box-shadow:rgba(0,0,0,.12)0 4px 9px;border-radius:10px;transition:all .4s ease-in-out}#notify a,#notify p{display:inline}#notify a{text-decoration:none;letter-spacing:1px;color:#0070f2}#notify button{width:60px;height:30px;box-shadow:rgba(0,0,0,.3)0 4px 9px;margin:0;background-color:#000;padding:0;border-radius:5px;color:#fff;border:1px solid transparent;outline:none;transition:box-shadow 0s}#notify button:hover{box-shadow:rgba(0,0,0,.3)0 6px 12px}#notify button:active{box-shadow:transparent 0 8px 9px}@media print,screen and (max-width:680px){.nav_container{position:relative;z-index:999}.nav_container .site_nav{display:none;position:fixed;right:0;top:60px;padding:10px 0;width:100%;background-color:#fff;box-shadow:0 10px 20px rgba(236,236,236,.86)}.nav_container .site_nav ul{float:none;text-align:center}.nav_container .site_nav li{float:none}.nav_container .menu_icon{position:fixed;right:0}.back_to_top{display:none!important}}@media screen and (max-width:900px){.markdown blockquote:before{content:}.markdown blockquote{padding:0 0 0 16px;border-left:rgba(175,175,175,.22)solid 5px;color:rgba(0,0,0,.4)}aside{display:none}.post_page,.wrapper,.list_with_title,.page_tags{width:90%!important}.post{border:0;border-right:2rem solid #fff;padding:2rem 0 2rem 2rem;margin-top:20px;overflow:hidden}.post .post_title a{font-size:1.5rem}.post .post_content p{font-size:1rem}.post .read_info span{font-size:1rem}.post .read_info .read_more i{font-size:1rem}.post .read_info .read_time span{font-size:.9rem}.pagination a .pagination_button{margin-bottom:20px}.footer .my_socials a i{font-size:24px}}@media screen and (min-width:1600px){.nav .nav_container{max-width:800px}.content .post_page,.content .wrapper,.content .list_with_title,.content .page_tags{max-width:800px}}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-3px)}100%{opacity:1;-webkit-transform:translateY(0)}}@-moz-keyframes fadeInDown{0%{opacity:0;-moz-transform:translateY(-3px)}100%{opacity:1;-moz-transform:translateY(0)}}@-o-keyframes fadeInDown{0%{opacity:0;-o-transform:translateY(-3px)}100%{opacity:1;-o-transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-3px)}100%{opacity:1;transform:translateY(0)}}/style>style>@font-face{font-family:remixicon;src:url(/fonts/remixicon.eot);src:url(/fonts/remixicon.eot#iefix)format(embedded-opentype),url(/fonts/remixicon.woff2)format(woff2),url(/fonts/remixicon.woff)format(woff),url(/fonts/remixicon.ttf)format(truetype),url(/fonts/remixicon.svg)format(svg);font-display:swap}class^remixicon-,class* remixicon-{font-family:remixicon!important;font-size:14px;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.remixicon-calendar-line:before{content:\f053}.remixicon-arrow-right-circle-line:before{content:\efca}.remixicon-facebook-fill:before{content:\f153}.remixicon-github-fill:before{content:\f1f8}.remixicon-linkedin-fill:before{content:\f268}.remixicon-wechat-fill:before{content:\f4d7}.remixicon-rss-fill:before{content:\f395}/style>script srchttps://blog.fredliang.cn/js/prerender.js async>/script>link relmanifest href/manifest.json>script>(function(e,t){if(e.TeaAnalyticsObjectt,!et){function n(){n.q.push(arguments)}n.qn.q||,etn}et.l+new Date})(window,collectEvent)/script>script async srchttps://lf3-data.volccdn.com/obj/data-static/log-sdk/collect/collect-autotrack-rangers.js>/script>script>window.collectEvent(init,{app_id:303217,channel:cn,enable_ab_test:!0,autotrack:!0,enable_ab_visual:!0,enable_multilink:!0}),window.collectEvent(start),window.collectEvent(getVar,test_123,!0,function(e){e?console.log(hit experiment: ,e):console.log(hit experiment: ,e)})/script>script>(function(e,t,n,s,o,i,a){if(e.RangerSiteSDKObjecto,eoeo||function(){(eo.qeo.q||).push(arguments)},eo.l1*new Date,it.createElement(n),at.getElementsByTagName(n)0,i.async1,i.srcs,i.crossOriginanonymous,a.parentNode.insertBefore(i,a),eo.globalPreCollectErrorfunction(){eo(precollect,error,arguments)},typeof e.addEventListenerfunction&&(e.addEventListener(error,eo.globalPreCollectError,!0),e.addEventListener(unhandledrejection,eo.globalPreCollectError)),PerformanceLongTaskTimingin e){var seo.lt{e:};s.onew PerformanceObserver(function(e){s.es.e.concat(e.getEntries())}),s.o.observe({entryTypes:longtask})}})(window,document,script,https://tbm.snssdk.com/rangers/sdk.js?app_id303217,RangersSiteSDK)/script>script>window.RangersSiteSDK(config,{app_id:303217})/script>script srchttps://unpkg.com/@optimizely/optimizely-sdk/dist/optimizely.browser.umd.min.js>/script>script srchttps://cdn.optimizely.com/datafiles/4bhDTv4fBGhDv3jucjQ2Me.json/tag.js>/script>script>var optimizelyClientInstancewindow.optimizelySdk.createInstance({datafile:window.optimizelyDatafile}),variationoptimizelyClientInstance.activate(mab_test,userId);variationcvr_3_1?console.log(variation):variationcvr_3_2?console.log(variation):console.log(variation)/script>/head>/html>body>noscript>iframe srchttps://www.googletagmanager.com/ns.html?idGTM-MZPCR2F height0 width0 styledisplay:none;visibility:hidden>/iframe>/noscript>div classmain animated>div classnav>div classnav_left>div classsite_title>a hrefhttps://blog.fredliang.cn>img altFred srchttps://blog.fredliang.cn/images/logo.svg>/a>/div>/div>div classnav_container>div classsite_nav idsite_nav>ul>li idnav-home>a href/>Home/a>/li>li idnav-archive>a href/posts/>Archive/a>/li>li idnav-tags>a href/tags/>Tags/a>/li>li idnav-photos>a href/photos/>Photos/a>/li>li idnav-about>a href/about/>About/a>/li>/ul>/div>/div>div classnav_right>/div>div idab stylebackground-color:#fff;display:flex;align-items:center;justify-content:center;padding:2px 12px;position:fixed;right:0;bottom:0;z-index:100;font-family:product sans;margin:10px;border-radius:5px;box-shadow:0 0 10px rgba(0,0,0,7%)>/div>/div>div classcontent>div classwrapper>aside classleft>/aside>div classpost animated fadeInDown>div classpost_title>h2>a href/posts/2020-08-23-fintech-scales-vertical-saas/>翻译 Fintech 如何推动垂直行业 SaaS 增长/a>/h2>/div>div classpost_detail>div classmeta>div classinfo>span classfield>i classremixicon-calendar-line>/i>span classdate>2020.08.23/span>/span>span classfield>//span>span classfield tags>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/product-manager/>Product Manager/a>/div>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/saas/>SaaS/a>/div>/span>/div>/div>/div>div classlist>div classpost_content markdown>p>a16z 关于 Fintech 对于垂直行业 SaaS 服务影响的分析文章....../p>/div>/div>div classread_info>a classread_more href/posts/2020-08-23-fintech-scales-vertical-saas/>span>Read More/span>i classremixicon-arrow-right-circle-line>/i>/a>div classread_time>span>45 MIN Read/span>/div>/div>/div>div classpost animated fadeInDown>div classpost_title>h2>a href/posts/2019-09-10-whats-next/>关于未来的一点想法/a>/h2>/div>div classpost_detail>div classmeta>div classinfo>span classfield>i classremixicon-calendar-line>/i>span classdate>2019.09.10/span>/span>span classfield>//span>span classfield tags>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/product-manager/>Product Manager/a>/div>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/my-life/>My Life/a>/div>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/share/>Share/a>/div>/span>/div>/div>/div>div classlist>div classpost_content markdown>p>一点回顾,一点感慨,一点思考。一点想法,一点念头....../p>/div>/div>div classread_info>a classread_more href/posts/2019-09-10-whats-next/>span>Read More/span>i classremixicon-arrow-right-circle-line>/i>/a>div classread_time>span>11 MIN Read/span>/div>/div>/div>div classpost animated fadeInDown>div classpost_title>h2>a href/posts/2019-06-10-who-knows-you-better/>Who Knows You Better/a>/h2>/div>div classpost_detail>div classmeta>div classinfo>span classfield>i classremixicon-calendar-line>/i>span classdate>2019.06.09/span>/span>span classfield>//span>span classfield tags>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/product-manager/>Product Manager/a>/div>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/share/>Share/a>/div>/span>/div>/div>/div>div classlist>div classpost_content markdown>p>刚刚看完《黑镜》第五季第五季第二集,关于其中情节的一些思考....../p>/div>/div>div classread_info>a classread_more href/posts/2019-06-10-who-knows-you-better/>span>Read More/span>i classremixicon-arrow-right-circle-line>/i>/a>div classread_time>span>18 MIN Read/span>/div>/div>/div>div classpost animated fadeInDown>div classpost_title>h2>a href/posts/2019-05-16-mini-program-vs-pwa/>小程序标准化 & PWA/a>/h2>/div>div classpost_detail>div classmeta>div classinfo>span classfield>i classremixicon-calendar-line>/i>span classdate>2019.05.15/span>/span>span classfield>//span>span classfield tags>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/product-manager/>Product Manager/a>/div>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/technology/>Technology/a>/div>/span>/div>/div>/div>div classlist>div classpost_content markdown>p>最近看到了W3C的《下一代移动 Web 应用(小程序/快应用)标准化研讨会》的会议记要,整理下一些看法....../p>/div>/div>div classread_info>a classread_more href/posts/2019-05-16-mini-program-vs-pwa/>span>Read More/span>i classremixicon-arrow-right-circle-line>/i>/a>div classread_time>span>10 MIN Read/span>/div>/div>/div>div classpost animated fadeInDown>div classpost_title>h2>a href/posts/2019-05-13-reading-tencent-report/>2018年腾讯年报/a>/h2>/div>div classpost_detail>div classmeta>div classinfo>span classfield>i classremixicon-calendar-line>/i>span classdate>2019.05.13/span>/span>span classfield>//span>span classfield tags>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/product-manager/>Product Manager/a>/div>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/share/>Share/a>/div>/span>/div>/div>/div>div classlist>div classpost_content markdown>p>腾讯年报中感兴趣的一些点,拿出来分享一下....../p>/div>/div>div classread_info>a classread_more href/posts/2019-05-13-reading-tencent-report/>span>Read More/span>i classremixicon-arrow-right-circle-line>/i>/a>div classread_time>span>5 MIN Read/span>/div>/div>/div>div classpost animated fadeInDown>div classpost_title>h2>a href/posts/apache-beam/>Apache Beam 初探/a>/h2>/div>div classpost_detail>div classmeta>div classinfo>span classfield>i classremixicon-calendar-line>/i>span classdate>2019.01.14/span>/span>span classfield>//span>span classfield tags>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/big-data/>Big Data/a>/div>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/technology/>Technology/a>/div>/span>/div>/div>/div>div classlist>div classpost_content markdown>p>Apache Beam是Apache软件基金会越来越多的数据流项目中最新增添的成员。这个项目的名称表明了设计:结合了批处理(Batch)模式和数据流(Stream)处理模式。它基于一种统一模式,用于定义和执行数据并行处理管道(pipeline),这些管理随带一套针对特定语言的SDK用于构建管道,以及针对特定运行时环境的Runner用于执行管道。....../p>/div>/div>div classread_info>a classread_more href/posts/apache-beam/>span>Read More/span>i classremixicon-arrow-right-circle-line>/i>/a>div classread_time>span>22 MIN Read/span>/div>/div>/div>div classpost animated fadeInDown>div classpost_title>h2>a href/posts/gou-jian-pbji-yun-duan-shu-cang-shi-jian/>整理构建PB级云端数仓实践/a>/h2>/div>div classpost_detail>div classmeta>div classinfo>span classfield>i classremixicon-calendar-line>/i>span classdate>2019.01.07/span>/span>span classfield>//span>span classfield tags>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/big-data/>Big Data/a>/div>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/work/>Work/a>/div>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/technology/>Technology/a>/div>/span>/div>/div>/div>div classlist>div classpost_content markdown>p>在数据大爆炸时代,随着企业的业务数据体量的不断发展,半结构化以及无结构化数据越来越多,传统的数据仓库面临重大挑战。通过以Hadoop, Spark为代表的大数据技术来构建新型数据仓库,已经成为越来越多的企业应对数据挑战的方式。....../p>/div>/div>div classread_info>a classread_more href/posts/gou-jian-pbji-yun-duan-shu-cang-shi-jian/>span>Read More/span>i classremixicon-arrow-right-circle-line>/i>/a>div classread_time>span>67 MIN Read/span>/div>/div>/div>div classpost animated fadeInDown>div classpost_title>h2>a href/posts/qiyejichanpinsheji/>转载企业级产品设计的未来-用户设计/a>/h2>/div>div classpost_detail>div classmeta>div classinfo>span classfield>i classremixicon-calendar-line>/i>span classdate>2018.12.21/span>/span>span classfield>//span>span classfield tags>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/design/>Design/a>/div>div classtag>!doctype html>svg t1560192546631 classicon viewBox0 0 1024 1024 xmlnshttp://www.w3.org/2000/svg p-id2171 xmlns:xlinkhttp://www.w3.org/1999/xlink width160 height160>defs>style/>/defs>path dM853.333333 597.333333H669.866667l31.146666-170.666666h152.32a42.666667 42.666667.0 000-85.333334h-136.96l29.44-162.56A42.666667 42.666667.0 00709.973333 128 42.666667 42.666667.0 00657.92 162.986667L625.92 341.333333H460.373333l29.44-162.56A42.666667 42.666667.0 00453.973333 128 42.666667 42.666667.0 00401.92 162.986667l-32 178.346666H170.666667a42.666667 42.666667.0 000 85.333334h183.466666l-31.146666 170.666666h-152.32a42.666667 42.666667.0 000 85.333334h136.96l-29.44 162.56A42.666667 42.666667.0 00314.026667 896 42.666667 42.666667.0 00366.08 861.013333l32-178.346666h165.546667l-29.44 162.56A42.666667 42.666667.0 00570.026667 896 42.666667 42.666667.0 00622.08 861.013333l32-178.346666H853.333333a42.666667 42.666667.0 000-85.333334zm-439.466666.0 31.146666-170.666666h165.12l-31.146666 170.666666z fill#909090 p-id2172/>/svg>a relprerender hrefhttps://blog.fredliang.cn/tags/share/>Share/a>/div>/span>/div>/div>/div>div classlist>div classpost_content markdown>p>企业级产品想要获得更加伟大的成功,产品提供者必须向使用者传达与用户产品基本标准一致的体验。....../p>/div>/div>div classread_info>a classread_more href/posts/qiyejichanpinsheji/>span>Read More/span>i classremixicon-arrow-right-circle-line>/i>/a>div classread_time>span>18 MIN Read/span>/div>/div>/div>div classpagination>a href/page/2/>div classpagination_button next>下一页 i classremixicon-arrow-right-circle-line>/i>/div>/a>/div>aside classright>/aside>/div>/div>/div>footer classfooter>div classfooter_info>p classauthor>a hrefhttps://www.yuque.com/fredliang/refine>Designed/a> & a hrefhttps://github.com/fredliang44/hugo-theme-refine>Coded/a> With ❤️ by a hrefhttps://www.fredliang.cn>Fred Liang/a>/p>p classpowered_by>Powered Bya relnoreferrer noopener hrefhttps://alpha.let.sh.cn titlepowerby target_blank>let.sh/a>/p>div classmy_socials>a relnoreferrer noopener hrefhttps://www.facebook.com/profile.php?id100015539800123 titlefacebook target_blank>i classremixicon-facebook-fill>/i>/a>a relnoreferrer noopener hrefhttps://www.github.com/fredliang44 titlegithub target_blank>i classremixicon-github-fill>/i>/a>a relnoreferrer noopener hrefhttps://www.linkedin.com/in/liangzhibo/ titlelinkedin target_blank>i classremixicon-linkedin-fill>/i>/a>a relnoreferrer noopener hrefhttps://storage.fredliang.cn/Wechat-QRCode.jpeg titlewechat target_blank>i classremixicon-wechat-fill>/i>/a>a hrefhttps://blog.fredliang.cn/feed.xml typeapplication/rss+xml titlerss target_blank>i classremixicon-rss-fill>/i>/a>/div>p classbeian>a relnoreferrer noopener hrefhttp://www.beian.miit.gov.cn titlebeian target_blank>京ICP备16033945号/a>/p>div idnotify>div classnotify_wrapper>p idnotify_content>/p>/div>/div>/div>/footer>script srchttps://blog.fredliang.cn/js/jquery-3.4.1.slim.min.js>/script>script srchttps://blog.fredliang.cn/js/refine.min.50a92d6a25cd606f213d1463c15474748b2d508f280e54ca3f4f9f2759ae7dfcbaaf28affb9111a094b116e95042eb723dc92ea667d81ac221e7894f7d99c0ef.js integritysha512-UKktaiXNYG8hPRRjwVR0dIstUI8oDlTKP0+fJ1muffy6ryiv+5ERoJSxFulQQutyPckupmfYGsIh54lPfZnA7w>/script>script>serviceWorkerin navigator&&(navigator.serviceWorker.register(/sw.js,{scope:/}).then(e>{e.addEventListener(updatefound,()>{newWorkere.installing,newWorker.addEventListener(statechange,()>{if(newWorker.stateinstalled&&navigator.serviceWorker.controller)return console.log(Service Worker Updated),showNotify(网站有更新,点击a href+window.location.href+>刷新当前页面/a>获取最新版),0})})}),navigator.serviceWorker.ready.then(function(){console.log(Service Worker Ready)}));function showNotify(e){let tdocument.getElementById(notify),ndocument.getElementById(notify_content);t.setAttribute(style,display:block; bottom: 20px),setTimeout(hideNotify,1e4),n.innerHTMLe}function hideNotify(){let edocument.getElementById(notify);e.setAttribute(style,bottom: -100px),setTimeout(e.setAttribute(style,display:none),2e3)}/script>script>function uuidv4(){returnxxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx.replace(/xy/g,function(e){var tMath.random()*16|0,nex?t:t&3|8;return n.toString(16)})}window.localStorage.getItem(webid)null&&window.localStorage.setItem(webid,uuidv4());var enabledoptimizelyClientInstance.isFeatureEnabled(show_photo_entry,user+window.localStorage.getItem(webid)),user;enabled?console.log(PhotoEntry is ON!):(document.getElementById(nav-photos).innerHTML,console.log(PhotoEntry is off.)),useroptimizelyClientInstance.createUserContext(fredliang,null),optimizelyClientInstance.track(click_mab_test,window.localStorage.getItem(webid)),optimizelyClientInstance.track(mab_test_02,window.localStorage.getItem(webid)),optimizelyClientInstance.track(page_view,window.localStorage.getItem(webid))/script>/body>/html>
View on OTX
|
View on ThreatMiner
Please enable JavaScript to view the
comments powered by Disqus.
Data with thanks to
AlienVault OTX
,
VirusTotal
,
Malwr
and
others
. [
Sitemap
]