2015-11-30 6 views
6

मैं वेबसर्वर (नोड.जेएस) से एचटीएमएल/जेएसओएन डेटा डाउनलोड करने और क्लाइंट-साइड पर पीडीएफ में कनवर्ट करने की कोशिश कर रहा हूं। मैं उपयोगकर्ता के ब्राउज़र पर प्रसंस्करण करना चाहता हूं, इसलिए मेरा सर्वर पीडीएफ रूपांतरणों के साथ अधिभारित नहीं होता है।क्लाइंट-साइट (ब्राउज़र) के लिए डेटा की बड़ी मात्रा में चंक और पाइप पीडीएफ पीढ़ी

यदि डेटा इतना बड़ा नहीं था तो यह कोई समस्या नहीं होनी चाहिए। एक रिपोर्ट (सर्वर से डाउनलोड किया गया डेटा) 200, 300 एमबी और ब्राउज़र में स्मृति में इतना डेटा संभाल नहीं सकता है। इसके कारण, मुझे (शायद) डेटा में डेटा को डाउनलोड और सहेजने की ज़रूरत है, या इसे पीडीएफ कनवर्टर पर सीधे पाइप करें।

लेकिन मैं इसके चारों ओर अपना सिर नहीं प्राप्त कर सकता। मैं डाउनलोड किए गए डेटा को & स्टोर/पाइप कैसे लगा सकता हूं? मैं चारों ओर देख रहा हूं और कई पुस्तकालयों को पाया है, लेकिन मुझे अभी भी यह नहीं मिला कि उन्हें एक साथ कैसे काम करना है। कोई विचार?

+0

ब्राउज़र के लिए आवश्यक डेटा का आवश्यक आकार क्या है? – guest271314

+0

यह 50 केबी से 800 एमबी, 900 एमबी तक चला जाता है। – AFMeirelles

+0

क्या आप ग्राहक को चंक-वार डेटा ट्रांसफर के लिए खंडित प्रतिक्रियाओं या websockets का उपयोग नहीं कर सकते? क्लाइंट पर टुकड़े की पीडीएफ पीढ़ी अभी भी चुनौतीपूर्ण है। – lipp

उत्तर

0

मुझे नहीं लगता कि ऐप उपभोक्ताओं को अपने कंप्यूटर पर 800 एमबी पीडीएफ फाइलें बनाने का अच्छा विचार है।

मैं बड़े रिकॉर्ड के मामले में JSON से बचूंगा। यदि वास्तविक रिकॉर्ड डेटा के 25 एमबी से अधिक है, तो मैं उस डेटा को बाइनरी/संपीड़ित रूप में भेजूंगा।

इस डेटा को देखने के लिए, मुझे यह भी नहीं लगता कि पीडीएफ जाने का रास्ता है। मैं अंत उपभोक्ता के लिए एक विशेष ऑफ़लाइन दर्शक बनाउंगा। शायद एक कस्टम ब्राउजर प्लगइन या एक्सटेंशन ताकि जब वे एक रिपोर्ट देख रहे हों तो उन्हें स्मृति में 800 एमबी फेंकने की जरूरत नहीं है।

Google ड्राइव या रैकस्पेस ओपनक्लाउड या एडब्ल्यूएस या उस प्रकृति के कुछ अन्य कारणों का उपयोग करने का एक और विचार हो सकता है, क्योंकि अगर उपभोक्ता के अंत में स्थानांतरण के माध्यम से कुछ गलत हो जाता है, तो आपके सर्वर को भी शुरू करना होगा। यदि आप इसे सीडीएन के पीछे क्लाउड में फेंक देते हैं, तो वे इसे डाउनलोड कर सकते हैं, हालांकि उन्हें उनके पास होने वाले सर्वर से कई बार आवश्यकता हो सकती है। इसके अलावा आपका सर्वर क्लाइंट को इसे भेजने से क्लाउड को भेजने में सक्षम होना चाहिए ताकि आपके सर्वर के संसाधनों को खुले हुए कम समय लगे।

+0

दिलचस्प दृष्टिकोण। क्या आप मुझे और बता सकते हैं कि आपको लगता है कि क्लाइंट-साइड पर पीडीएफ उत्पन्न करना बुरा विचार क्यों है? मैं सोच रहा था कि उपयोगकर्ता को प्रसंस्करण लागत को धक्का देना बेहतर होगा, इसलिए मेरे सर्वर को कई प्रोसेसिंग अनुरोधों से बाढ़ नहीं आती है - और मुझे एक बड़े सर्वर की आवश्यकता नहीं है। यह आवेदन की कुल लागत को कम करता है।चूंकि पीडीएफ सबसे अच्छा प्रारूप है या नहीं, दुर्भाग्य से यह एक विकल्प नहीं है, यह एक व्यावसायिक आवश्यकता है। – AFMeirelles

+0

मैं मानता हूं कि ग्राहकों को जितना संभव हो उतना काम सौंपना सर्वोत्तम है। मुझे एहसास है कि मैं दृढ़ता से उस आवश्यकता से लड़ूंगा क्योंकि मुझे संदेह है कि यह अंत उपभोक्ता के लिए सबसे अच्छा अनुभव होगा। लेकिन एक इष्टतम समाधान निर्धारित करने के लिए, मुझे यह जानना होगा कि कच्चा डेटा क्या है और कच्चे डेटा से उपभोक्ता को कितनी जानकारी प्राप्त होनी चाहिए। उदाहरण के लिए, मैंने एक विंडफार्म प्रबंधन प्रणाली बनाई है। कच्चा डेटा ब्लेड क्षति/मरम्मत विवरण है। ग्राहक को चार्ट और विवरण के साथ पीडीएफ रिपोर्ट मिलती है, लेकिन रिपोर्ट एक परियोजना निरीक्षण/मरम्मत के लिए तैयार की जाती है। – flcoder

संबंधित मुद्दे