คำถามติดแท็ก caching

แคชเป็นกลไกสำหรับการจัดเก็บข้อมูลชั่วคราว (แคช) ในเครื่องเพื่อลดเวลาในการเข้าถึงข้อมูลที่จัดเก็บไว้ไกล สำหรับ CPU / ดิสก์ / การท่องเว็บโปรดใช้แท็กที่เกี่ยวข้อง (cpu-cache, diskcache, ... )

11
เหตุใดจึงควรใช้ทั้ง no-cache และ no-store ในการตอบสนอง HTTP
ฉันได้รับคำสั่งให้ป้องกันการรั่วไหลของข้อมูลผู้ใช้การตอบสนองเพียง "ไม่มีแคช" นั้นไม่เพียงพอ "no-store" ก็จำเป็นเช่นกัน Cache-Control: no-cache, no-store หลังจากอ่านข้อมูลจำเพาะhttp://www.w3.org/Protocols/rfc2616/rfc2616-sec14.htmlแล้วฉันก็ยังไม่แน่ใจว่าทำไม ความเข้าใจในปัจจุบันของฉันคือมันมีไว้สำหรับเซิร์ฟเวอร์แคชระดับกลางเท่านั้น แม้ว่า "ไม่มีแคช" จะตอบสนอง แต่เซิร์ฟเวอร์แคชระดับกลางก็ยังสามารถบันทึกเนื้อหาลงในพื้นที่จัดเก็บที่ไม่ลบเลือนได้ เซิร์ฟเวอร์แคชระดับกลางจะตัดสินใจว่าจะใช้เนื้อหาที่บันทึกไว้สำหรับคำขอต่อไปนี้หรือไม่ อย่างไรก็ตามหาก "ไม่มีการจัดเก็บ" อยู่ในการตอบกลับเซิร์ฟเวอร์แคชระดับกลางไม่ควรจัดเก็บเนื้อหา ดังนั้นจึงปลอดภัยกว่า มีเหตุผลอื่นอีกไหมที่เราต้องการทั้ง "no-cache" และ "no-store"?
120 http  caching  no-cache 

9
ฉันจะใช้การแคชดิสก์ใน Picasso ได้อย่างไร
ฉันใช้ Picasso เพื่อแสดงภาพในแอป Android ของฉัน: /** * load image.This is within a activity so this context is activity */ public void loadImage (){ Picasso picasso = Picasso.with(this); picasso.setDebugging(true); picasso.load(quiz.getImageUrl()).into(quizImage); } ฉันเปิดใช้งานการดีบักและมันจะแสดงเป็นสีแดงและสีเขียวเสมอ แต่ไม่เคยแสดงสีเหลือง ตอนนี้ถ้าฉันโหลดภาพเดียวกันในครั้งต่อไปและไม่มีอินเทอร์เน็ตรูปภาพจะไม่โหลด คำถาม: ไม่มีแคชดิสก์ในเครื่องหรือไม่? ฉันจะเปิดใช้งานการแคชดิสก์ได้อย่างไรเนื่องจากฉันจะใช้ภาพเดียวกันหลาย ๆ ครั้ง ฉันต้องเพิ่มสิทธิ์ดิสก์ในไฟล์รายการของ Android หรือไม่?

9
Cache Invalidation - มีวิธีแก้ปัญหาทั่วไปหรือไม่?
"มีปัญหาหนักเพียงสองประการในวิทยาการคอมพิวเตอร์: การทำให้แคชไม่ถูกต้องและการตั้งชื่อสิ่งต่างๆ" ฟิลคาร์ลตัน มีวิธีแก้ปัญหาหรือวิธีการทั่วไปในการทำให้แคชเป็นโมฆะหรือไม่ หากต้องการทราบว่ารายการค้างดังนั้นคุณจึงรับประกันได้ว่าจะได้รับข้อมูลใหม่เสมอ? ตัวอย่างเช่นพิจารณาฟังก์ชันgetData()ที่รับข้อมูลจากไฟล์ มันจะแคชตามเวลาที่แก้ไขล่าสุดของไฟล์ซึ่งจะตรวจสอบทุกครั้งที่เรียก จากนั้นคุณเพิ่มฟังก์ชันที่สองtransformData()ซึ่งจะแปลงข้อมูลและเก็บผลลัพธ์ไว้สำหรับครั้งต่อไปที่เรียกใช้ฟังก์ชัน ไม่มีความรู้เกี่ยวกับไฟล์ - คุณจะเพิ่มการอ้างอิงได้อย่างไรว่าหากไฟล์ถูกเปลี่ยนแคชนี้จะไม่ถูกต้อง? คุณสามารถโทรgetData()ทุกครั้งที่transformData()มีการเรียกและเปรียบเทียบกับค่าที่ใช้ในการสร้างแคช แต่อาจมีค่าใช้จ่ายสูงมาก

2
การลบอิมเมจ UIImage ชื่อ: FUD
แก้ไขกุมภาพันธ์ 2014: โปรดทราบว่าคำถามนี้เกิดจาก iOS 2.0! ข้อกำหนดด้านรูปภาพและการจัดการมีการเปลี่ยนแปลงมากมายตั้งแต่นั้นมา Retina ทำให้ภาพใหญ่ขึ้นและโหลดซับซ้อนขึ้นเล็กน้อย ด้วยในตัวในการสนับสนุนสำหรับ iPad และภาพจอประสาทตา, คุณควรจะใช้อย่างแน่นอน ImageNamed ในรหัสของคุณ ฉันเห็นหลายคนบอกว่าimageNamedไม่ดี แต่มีคนจำนวนเท่า ๆ กันบอกว่าประสิทธิภาพดี - โดยเฉพาะอย่างยิ่งเมื่อแสดงผลUITableViews ดูตัวอย่างคำถาม SO นี้หรือบทความนี้บน iPhoneDeveloperTips.com UIImage's imageNamedวิธีการที่ใช้ในการรั่วไหลจึงหลีกเลี่ยงที่ดีที่สุด แต่ได้รับการแก้ไขในรุ่นล่าสุด ฉันต้องการทำความเข้าใจอัลกอริธึมการแคชให้ดีขึ้นเพื่อทำการตัดสินใจอย่างมีเหตุผลว่าฉันสามารถเชื่อถือระบบในการแคชรูปภาพของฉันได้ที่ใดและฉันต้องไปที่ใดให้มากขึ้นและดำเนินการด้วยตัวเอง ความเข้าใจพื้นฐานของฉันปัจจุบันคือว่ามันเป็นที่เรียบง่ายNSMutableDictionaryของการUIImagesอ้างอิงโดยชื่อไฟล์ มันจะใหญ่ขึ้นและเมื่อหน่วยความจำหมดก็จะเล็กลงมาก ยกตัวอย่างเช่นไม่มีใครรู้ว่าสำหรับแน่ใจว่าอยู่เบื้องหลังแคชภาพimageNamedไม่ตอบสนองต่อdidReceiveMemoryWarning? ดูเหมือนว่าไม่น่าเป็นไปได้ที่ Apple จะไม่ทำเช่นนี้ หากคุณมีข้อมูลเชิงลึกเกี่ยวกับอัลกอริทึมการแคชโปรดโพสต์ไว้ที่นี่

13
ใน C ++ ฉันควรกังวลกับตัวแปรแคชหรือให้คอมไพเลอร์ทำการปรับให้เหมาะสม? (นามแฝง)
พิจารณารหัสต่อไปนี้ ( pเป็นประเภทunsigned char*และbitmap->widthเป็นจำนวนเต็มบางประเภทซึ่งไม่ทราบแน่ชัดและขึ้นอยู่กับเวอร์ชันของไลบรารีภายนอกที่เราใช้): for (unsigned x = 0; x < static_cast<unsigned>(bitmap->width); ++x) { *p++ = 0xAA; *p++ = 0xBB; *p++ = 0xCC; } คุ้มไหมที่จะเพิ่มประสิทธิภาพ [.. ] มีบางกรณีไหมที่สามารถให้ผลลัพธ์ที่มีประสิทธิภาพมากขึ้นโดยการเขียน: unsigned width(static_cast<unsigned>(bitmap->width)); for (unsigned x = 0; x < width; ++x) { *p++ = 0xAA; *p++ = 0xBB; *p++ = 0xCC; } …

5
ความแตกต่างระหว่าง Caching และ Memoization คืออะไร?
ฉันต้องการทราบความแตกต่างที่แท้จริงระหว่างcachingและmemoizationคืออะไร ขณะที่ผมเห็นมันทั้งสองเกี่ยวข้องกับการหลีกเลี่ยงการทำซ้ำสายงานที่จะได้รับข้อมูลโดยการจัดเก็บ อะไรคือความแตกต่างหลักระหว่างทั้งสอง?

13
ปิดการใช้งานแคชสำหรับบางภาพ
ฉันสร้างภาพโดยใช้ PHP lib บางครั้งเบราว์เซอร์ไม่โหลดไฟล์ที่สร้างขึ้นใหม่ ฉันจะปิดการใช้งานแคชเฉพาะสำหรับรูปภาพที่ฉันสร้างขึ้นแบบไดนามิกได้อย่างไร หมายเหตุ: ฉันต้องใช้ชื่อเดียวกันสำหรับภาพที่สร้างขึ้นเมื่อเวลาผ่านไป
113 html  image  caching 

5
ลบตัวแปรทั้งหมดยกเว้นฟังก์ชัน
ฉันโหลดออบเจ็กต์ประเภทต่างๆในคอนโซล R แล้ว ฉันสามารถลบออกทั้งหมดโดยใช้ rm(list=ls()) หรือลบเฉพาะฟังก์ชัน (แต่ไม่ใช่ตัวแปร) โดยใช้ rm(list=lsf.str()) คำถามของฉันคือมีวิธีลบตัวแปรทั้งหมดยกเว้นฟังก์ชันหรือไม่
113 r  caching 

4
Tomcat 8 Throw - org.apache.catalina.webresources.Cache.getResource ไม่สามารถเพิ่มทรัพยากรได้
ฉันเพิ่งอัปเกรด Tomcat จากเวอร์ชัน 7.0.52 เป็น 8.0.14 ฉันได้รับสิ่งนี้สำหรับไฟล์ภาพนิ่งจำนวนมาก: org.apache.catalina.webresources.Cache.getResourceไม่สามารถเพิ่มทรัพยากรที่ [/base/1325/WA6144-150x112.jpg] ไปยังแคชได้เนื่องจากมีพื้นที่ว่างไม่เพียงพอหลังจากการขับไล่รายการแคชที่หมดอายุ - พิจารณาเพิ่มขนาดสูงสุด ของแคช ฉันไม่ได้ระบุการตั้งค่าทรัพยากรใด ๆ และฉันไม่ได้รับสิ่งนี้สำหรับ 7.0.52 ฉันพบการกล่าวถึงสิ่งนี้ที่เกิดขึ้นเมื่อเริ่มต้นในรายงานข้อบกพร่องที่ได้รับการแก้ไขแล้ว สำหรับฉันสิ่งนี้ไม่ได้เกิดขึ้นเมื่อเริ่มต้น แต่เกิดขึ้นตลอดเวลาเมื่อมีการร้องขอทรัพยากร มีใครมีปัญหานี้อีกไหม อย่างน้อยก็พยายามปิดการใช้งานแคช แต่ฉันไม่พบตัวอย่างวิธีระบุไม่ให้ใช้แคช แอตทริบิวต์ได้หายไปจากบริบทใน Tomcat เวอร์ชัน 8 ได้ลองเพิ่มทรัพยากร แต่ไม่สามารถรับ config ที่ถูกต้องได้ <Resource name="file" cachingAllowed="false" className="org.apache.catalina.webresources.FileResourceSet" /> ขอบคุณ.

13
Android Webview - ล้างแคชโดยสิ้นเชิง
ฉันมี WebView ในหนึ่งในกิจกรรมของฉันและเมื่อโหลดหน้าเว็บเพจดังกล่าวจะรวบรวมข้อมูลพื้นหลังบางส่วนจาก Facebook สิ่งที่ฉันเห็นคือหน้าที่แสดงในแอปพลิเคชันนั้นเหมือนกันทุกครั้งที่เปิดและรีเฟรชแอป ฉันได้ลองตั้งค่า WebView ไม่ให้ใช้แคชและล้างแคชและประวัติของ WebView ฉันยังทำตามคำแนะนำที่นี่: จะล้างแคชสำหรับ WebView ได้อย่างไร แต่วิธีนี้ไม่ได้ผลมีใครคิดว่าฉันสามารถเอาชนะปัญหานี้ได้หรือไม่เพราะมันเป็นส่วนสำคัญของแอปพลิเคชันของฉัน mWebView.setWebChromeClient(new WebChromeClient() { public void onProgressChanged(WebView view, int progress) { if(progress >= 100) { mProgressBar.setVisibility(ProgressBar.INVISIBLE); } else { mProgressBar.setVisibility(ProgressBar.VISIBLE); } } }); mWebView.setWebViewClient(new SignInFBWebViewClient(mUIHandler)); mWebView.getSettings().setJavaScriptEnabled(true); mWebView.clearHistory(); mWebView.clearFormData(); mWebView.clearCache(true); WebSettings webSettings = mWebView.getSettings(); webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE); Time time = …
111 android  caching  webview 

8
Spring Cache @Cacheable - ไม่ทำงานขณะโทรจากวิธีอื่นของ bean เดียวกัน
Spring cache ไม่ทำงานเมื่อเรียกวิธีการแคชจากวิธีอื่นของ bean เดียวกัน นี่คือตัวอย่างเพื่ออธิบายปัญหาของฉันอย่างชัดเจน การกำหนดค่า: <cache:annotation-driven cache-manager="myCacheManager" /> <bean id="myCacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager"> <property name="cacheManager" ref="myCache" /> </bean> <!-- Ehcache library setup --> <bean id="myCache" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean" p:shared="true"> <property name="configLocation" value="classpath:ehcache.xml"></property> </bean> <cache name="employeeData" maxElementsInMemory="100"/> บริการแคช: @Named("aService") public class AService { @Cacheable("employeeData") public List<EmployeeData> getEmployeeData(Date date){ ..println("Cache is not being used"); …
108 java  spring  caching  ehcache 

6
จะป้องกัน Browser cache บนเว็บไซต์ Angular 2 ได้อย่างไร?
ขณะนี้เรากำลังดำเนินการโครงการใหม่ที่มีการอัปเดตเป็นประจำซึ่งลูกค้ารายหนึ่งของเราจะใช้งานทุกวัน โครงการนี้กำลังพัฒนาโดยใช้ angular 2 และเรากำลังประสบปัญหาแคชนั่นคือลูกค้าของเราไม่เห็นการเปลี่ยนแปลงล่าสุดในเครื่องของพวกเขา โดยส่วนใหญ่ไฟล์ html / css สำหรับไฟล์ js ดูเหมือนจะได้รับการอัปเดตอย่างถูกต้องโดยไม่ก่อให้เกิดปัญหามากนัก

5
ทำไม JVM แคช JIT คอมไพล์โค้ดไม่ได้
การใช้งาน JVM ที่เป็นที่ยอมรับจาก Sun ใช้การเพิ่มประสิทธิภาพที่ค่อนข้างซับซ้อนบางอย่างกับ bytecode เพื่อให้ได้ความเร็วในการดำเนินการที่ใกล้เคียงกับเนทีฟหลังจากที่โค้ดถูกเรียกใช้ไปสองสามครั้ง คำถามคือเหตุใดโค้ดที่คอมไพล์นี้จึงไม่ถูกแคชลงในดิสก์เพื่อใช้ระหว่างการใช้ฟังก์ชัน / คลาสเดียวกันในภายหลัง ตามที่กล่าวมาทุกครั้งที่เรียกใช้งานโปรแกรมคอมไพเลอร์ JIT จะเริ่มทำงานใหม่แทนที่จะใช้โค้ดเวอร์ชันที่คอมไพล์ไว้ล่วงหน้า การเพิ่มคุณสมบัตินี้จะไม่เพิ่มการเพิ่มที่สำคัญให้กับเวลารันเริ่มต้นของโปรแกรมเมื่อมีการตีความ bytecode เป็นหลักหรือไม่?
107 java  caching  jvm  compilation  jit 

16
การแคชรูปภาพใหม่ของ Gmail ทำให้ลิงก์รูปภาพในจดหมายข่าวเสียหาย
ฉันมีอีเมลอัตโนมัติบางฉบับที่ส่งออกไปเมื่อเสร็จสิ้นการสมัครใช้งานเว็บไซต์ของฉัน จนกระทั่งเมื่อไม่นานมานี้พวกเขาทำงานได้ดี ตอนนี้ระบบใหม่ของ Google กำลังเขียนภาพใหม่และจัดเก็บไว้ในแคช (คาดว่า) อย่างไรก็ตามการเขียนลิงก์รูปภาพของฉันใหม่ของ Google ทำให้ลิงก์เสียหายทั้งหมดทำให้เกิดข้อผิดพลาด 500 รายการและรูปภาพลิงก์เสีย ให้บอกว่า URL ภาพปกติของฉันคือ: http://www.mysite.com/images/pic1.jpg Google เขียนสิ่งนี้ใหม่เป็น: https://ci5.googleusercontent.com/proxy/vI79kajdUGm6Wk-fjyicDLjZbCB1w9NfkoZ-zQFOB2OpJ1ILmSvfvHmE56r72us5mIuIXCFiO3V8rgkZOjfhghTH0R07BbcQy5g=s0-d-e1-ft#http://www.mysite.com/images/pic1.jpg อย่างไรก็ตามไม่มีอะไรใน URL นั้น ดังนั้นอาจมีบางอย่างผิดปกติกับลิงก์ที่ Google สร้างขึ้นหรือรูปภาพไม่ได้ถูกอัปโหลดไปยังเซิร์ฟเวอร์ googleusercontent แต่ฉันไม่รู้วิธีแก้ปัญหา ฉันใช้ PHP ไลบรารี phpmailerและเซิร์ฟเวอร์ Ubuntu บน Amazon EC2 แต่ไม่แน่ใจว่าเกี่ยวข้องกับปัญหานี้
107 image  caching  gmail  rewrite 

9
ล้างแคชไฟล์เพื่อทดสอบประสิทธิภาพซ้ำ
ฉันสามารถใช้เครื่องมือหรือเทคนิคใดในการลบเนื้อหาไฟล์ที่แคชเพื่อป้องกันไม่ให้ผลการทำงานของฉันบิดเบี้ยว ฉันเชื่อว่าฉันจำเป็นต้องล้างข้อมูลทั้งหมดหรือเลือกลบข้อมูลแคชเกี่ยวกับไฟล์และเนื้อหาไดเรกทอรี แอปพลิเคชั่นที่ฉันกำลังพัฒนาเป็นยูทิลิตี้การบีบอัดแบบพิเศษและคาดว่าจะทำงานอ่านและเขียนไฟล์จำนวนมากที่ระบบปฏิบัติการไม่ได้สัมผัสเมื่อเร็ว ๆ นี้และบล็อกดิสก์ที่ไม่น่าจะถูกแคช ฉันต้องการลบความแปรปรวนที่ฉันเห็นในเวลา IO เมื่อฉันทำซ้ำภารกิจในการจัดทำโปรไฟล์กลยุทธ์ต่างๆสำหรับการประมวลผลไฟล์ ฉันสนใจโซลูชันสำหรับ Windows XP เป็นหลักเนื่องจากเป็นเครื่องพัฒนาหลักของฉัน แต่ฉันสามารถทดสอบโดยใช้ linux ได้เช่นกันและฉันก็สนใจคำตอบสำหรับสภาพแวดล้อมนั้นเช่นกัน ฉันลอง SysInternals CacheSetแล้ว แต่การคลิก "ล้าง" ไม่ได้ส่งผลให้เพิ่มขึ้นที่วัดได้ (การคืนค่าตามเวลาหลังจากการบูตเย็น) ในช่วงเวลาที่จะอ่านไฟล์ซ้ำที่ฉันเพิ่งอ่านไม่กี่ครั้ง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.