Sally Kleinfeldt and Aaron VanDerlip describe ore.bigfile, a minimalist solution to the problem of uploading, downloading, and versioning very large files in Plone.
Sally Kleinfeldt and Aaron VanDerlip describe ore.bigfile, a minimalist solution to the problem of uploading, downloading, and versioning very large files in Plone.
BitTorrent is a peer-to-peer file sharing protocol that is commonly used to distribute large files over the Internet. It addresses limitations of traditional client-server models by utilizing the uploading bandwidth of peers that have already downloaded parts of a file. The key aspects of BitTorrent include dividing files into pieces, incentivizing contribution through a tit-for-tat approach, and encouraging diversity in content exchange through a rarest-first piece selection strategy. While BitTorrent has enabled widespread distribution of content, it also relies on trackers and can experience performance issues when interest in files declines.
This document discusses how to adopt agile techniques for managing Plone projects with distributed, part-time teams on a fixed budget. Key points include:
- Defining roles like project owner, developer, designer, and project manager
- Scheduling projects into planning, deployment, and development iterations
- Using tools like Trac, Pivotal Tracker, ScrumDo, and Google Docs to facilitate communication, tracking stories and tasks, and planning iterations
- Integrating UX/UI design by including designers in the team and having them work closely with developers
The document summarizes a presentation on search in Plone given at the Plone Conference in San Francisco on November 3, 2011. The presentation introduced information retrieval (IR) concepts, described the ZCatalog and Solr search engines, and discussed the conclusions from a conference discussion about integrating Solr with Plone. Key points included that Solr has advantages over ZCatalog for relevance and features, but ZCatalog cannot be completely replaced, and the current Solr add-ons do not provide the best foundation for future integration.
Scientific Collaboration with Plone: Sharing Bibliographies, Papers, DiscussionsSally Kleinfeldt
This document discusses how scientists can use Plone and Python tools for collaboration. It describes how Plone allows sharing of documents, papers, discussions, and more out of the box. Python is useful for scientists due to tools like NumPy for arrays, SciPy for statistics, and matplotlib for plotting. The document also lists several Plone products tailored for scientists like CMFBibliographyAT for bibliographies and lab notebooks.
Scientific Collaboration with Plone: A Case StudySally Kleinfeldt
Scientific Collaboration with Plone: A Case Study summarizes how an ecologist used Plone to create a collaboration site for the organization Advancing Green Chemistry. Key points:
1) The site provides a private, secure environment for members to discuss ideas around connecting green chemistry and environmental health sciences.
2) Plone's features like document sharing, wikis, and custom content types supported collaboration needs. Add-ons provided discussions, news feeds, and bibliographies.
3) The site helped prepare a policy statement in response to a change in administration, demonstrating how Plone can enable quick collaboration. Keeping the site simple focused on content management was critical to its success.
The document discusses various tools for debugging, profiling, and monitoring symfony applications including loggers, timers, XHProf for profiling, Tsung for benchmarking, and Graphite for live metrics. It provides examples of using these tools and outlines a roadmap for improving metric recording through a C PHP extension.
Sally Kleinfeldt and Aaron VanDerlip describe ore.bigfile, a minimalist solution to the problem of uploading, downloading, and versioning very large files in Plone.
BitTorrent is a peer-to-peer file sharing protocol that is commonly used to distribute large files over the Internet. It addresses limitations of traditional client-server models by utilizing the uploading bandwidth of peers that have already downloaded parts of a file. The key aspects of BitTorrent include dividing files into pieces, incentivizing contribution through a tit-for-tat approach, and encouraging diversity in content exchange through a rarest-first piece selection strategy. While BitTorrent has enabled widespread distribution of content, it also relies on trackers and can experience performance issues when interest in files declines.
This document discusses how to adopt agile techniques for managing Plone projects with distributed, part-time teams on a fixed budget. Key points include:
- Defining roles like project owner, developer, designer, and project manager
- Scheduling projects into planning, deployment, and development iterations
- Using tools like Trac, Pivotal Tracker, ScrumDo, and Google Docs to facilitate communication, tracking stories and tasks, and planning iterations
- Integrating UX/UI design by including designers in the team and having them work closely with developers
The document summarizes a presentation on search in Plone given at the Plone Conference in San Francisco on November 3, 2011. The presentation introduced information retrieval (IR) concepts, described the ZCatalog and Solr search engines, and discussed the conclusions from a conference discussion about integrating Solr with Plone. Key points included that Solr has advantages over ZCatalog for relevance and features, but ZCatalog cannot be completely replaced, and the current Solr add-ons do not provide the best foundation for future integration.
Scientific Collaboration with Plone: Sharing Bibliographies, Papers, DiscussionsSally Kleinfeldt
This document discusses how scientists can use Plone and Python tools for collaboration. It describes how Plone allows sharing of documents, papers, discussions, and more out of the box. Python is useful for scientists due to tools like NumPy for arrays, SciPy for statistics, and matplotlib for plotting. The document also lists several Plone products tailored for scientists like CMFBibliographyAT for bibliographies and lab notebooks.
Scientific Collaboration with Plone: A Case StudySally Kleinfeldt
Scientific Collaboration with Plone: A Case Study summarizes how an ecologist used Plone to create a collaboration site for the organization Advancing Green Chemistry. Key points:
1) The site provides a private, secure environment for members to discuss ideas around connecting green chemistry and environmental health sciences.
2) Plone's features like document sharing, wikis, and custom content types supported collaboration needs. Add-ons provided discussions, news feeds, and bibliographies.
3) The site helped prepare a policy statement in response to a change in administration, demonstrating how Plone can enable quick collaboration. Keeping the site simple focused on content management was critical to its success.
The document discusses various tools for debugging, profiling, and monitoring symfony applications including loggers, timers, XHProf for profiling, Tsung for benchmarking, and Graphite for live metrics. It provides examples of using these tools and outlines a roadmap for improving metric recording through a C PHP extension.
The document discusses JRuby on Google App Engine, including key features of App Engine, quotas and billing, limitations, the current issues with JRuby on App Engine, App Engine gems, the development environment, deployment process, APIs, and milestones in the development of JRuby on App Engine. It also includes a short biography and discussion of learning experiences from building an iPhone app that uses App Engine and JRuby as a backend.
For several educational institutions, YouTube serves the purpose of an online video-sharing website. As video content grows, new challenges emerge with respect to management and organization. Some of the challenges faced by institutions with large volume of video content include decentralization of video management, pricing, marketing, web metrics, server traffic, and scalability. Migrating to a video platform can alleviate some of these challenges. Deciding on the right platform can be a daunting task. This presentation highlights various decision-making steps in selecting the right platform that meets institutional requirements.
URIplay for Media Futures Conference (2009)Chris Jackson
The document discusses MetaBroadcast's URIplay project, which aims to help users find moving images across different sources and formats. It aggregates metadata to enable discovery and playback of content. URIplay currently supports sources like YouTube, Hulu, BBC and formats like RSS, JSON, and RDF/XML. The document outlines plans to add more sources and data, improve caching and indexing, and enable others to build apps using URIplay's capabilities or contribute additional content sources.
The document summarizes Andreas Jung's presentation on using MongoDB as the database for BRAINREPUBLIC. Some key points include:
- Andreas evaluated different "no-SQL" database options for BRAINREPUBLIC including key-value stores, MongoDB, and CouchDB.
- MongoDB was chosen because it offered the best performance compared to CouchDB, and its rich query API was preferable to map-reduce alone.
- The proposed architecture for BRAINREPUBLIC involved using MongoDB for the database, RabbitMQ for messaging, and SOLR for search, behind a load balancing layer.
The document discusses different tools for deploying Rails applications, including Moonshine, Capistrano, and Git Pusshuten. Moonshine uses Puppet for configuration management and deployment. Capistrano is used for deployments but mixes deployment with server management. Git Pusshuten allows defining environments using modules and provisioning servers for basic deployment needs using Git. It has advantages of separating deployment from code and fast deploys but has fewer modules and less active development compared to other tools.
Mozy is an online backup service that offers single computer licensing. It provides 2GB of free storage, with 50GB for $5.99/month and 125GB for $9.99/month. It has easy to use navigation and registration. Technical requirements include Windows 2000/XP/Vista/7 or Mac OS X 10.4.11+ and 128kbps upload speed.
Dropbox is also a single computer license with 2GB free, 50GB for $9.99/month and 100GB for $19.99/month. It is highly secure and allows access to files without an internet connection. Requirements are Windows 2003/XP/Vista/7 or Mac OS X 10.
The document discusses how to write a scalable Symfony application in the cloud. It covers upgrading points like database connections, file uploads, session storage, local development, and deploying. Database connections should use a master-slave configuration. File uploads can use Amazon S3 for storage. Sessions can be stored in a database. Local development differs from production. Deploying can use SVN update or checkout with symlinking. Automation helps deployment.
Cloudlytics is a Log analysis tool that helps you track all your Amazon S3 and CloudFront logs.
1) Why Log Processing
2) Use Cases
3) Sample Reports
4) What's Next
This document proposes standardizing the use of FTP for data exchange between patent offices. It suggests creating standardized user roles and folder structures on the FTP site. File names and formats would also be standardized for bibliographic and image data deliveries. An automation and monitoring tool is recommended to help ensure timely and consistent data exchange in the future.
The document summarizes Alvaro Videla's presentation on integrating Erlang with PHP. It introduces Erlang as a general purpose, functional programming language invented at Ericsson in 1986. It then discusses some popular products built with Erlang like Amazon SimpleDB and RabbitMQ. The presentation covers the PHP Erlang Bridge extension, which allows PHP to communicate with Erlang nodes. Examples are given of building a RabbitMQ admin console and using Erlang for PHP session storage. The document concludes by discussing how to install the extension and use it to send/receive messages and make RPC calls to Erlang.
The document discusses using JRuby and Duby to run Ruby on Rails applications on Google App Engine. It provides an overview of App Engine's key features and limitations. It then discusses how JRuby allows Ruby code to access Java APIs and libraries on App Engine. The document outlines milestones in developing JRuby for App Engine and current issues. It also introduces the dm-appengine and Duby libraries for modeling data and building applications in Ruby.
Presentation for the Workshop at the TYPO3 Developer Days 2013 (July 4th) in Hamburg:
- What happened since TYPO3 4.5?
- Roadmap for TYPO3 CMS 6.2 LTS
- Current Status of 6.2 Development
Codeworks'12 Rock Solid Deployment of PHP AppsPablo Godel
Web applications are becoming increasingly more complex, so deployment is not just transferring files with FTP anymore. We will go over the different challenges and how to deploy our PHP applications effectively, safely and consistently with the latest tools and techniques.
This document summarizes a presentation given by Tomas Lin on using Grails for Flex and Java developers. The presentation introduces Grails, highlighting four cool things about it including its ready-to-go configuration and use of the Groovy programming language. It demonstrates how to build a basic Grails application and explores integrating Grails with Flex using plugins for scaffolding and BlazeDS. The document concludes by discussing other Grails and Flex integration options and taking questions.
Optimizing Latency-Sensitive Queries for Presto at Facebook: A Collaboration ...Alluxio, Inc.
Alluxio Global Online Meetup
May 7, 2020
For more Alluxio events: https://www.alluxio.io/events/
Speakers:
Rohit Jain, Facebook
Yutian "James" Sun, Facebook
Bin Fan, Alluxio
For many latency-sensitive SQL workloads, Presto is often bound by retrieving distant data. In this talk, Rohit Jain, James Sun from Facebook and Bin Fan from Alluxio will introduce their teams’ collaboration on adding a local on-SSD Alluxio cache inside Presto workers to improve unsatisfied Presto latency.
This talk will focus on:
- Insights of the Presto workloads at Facebook w.r.t. cache effectiveness
- API and internals of the Alluxio local cache, from design trade-offs (e.g. caching granularity, concurrency level and etc) to performance optimizations.
- Initial performance analysis and timeline to deliver this feature for general Presto users.
- Discussion on our future work to optimize cache performance with deeper integration with Presto
This document provides an introduction to Cross-Origin Resource Sharing (CORS), which defines a mechanism that enables client-side cross-origin requests. It discusses alternatives to CORS like JSONP and server-side proxies. It explains the CORS process, including how simple requests work directly and how preflight requests are used for more complex requests involving custom headers. It also provides browser support information and links to specifications and further resources about CORS.
This document provides an overview and introduction to learning Python for data science. It outlines the structure, which includes introductions to NumPy, basic plotting, and pandas. It encourages asking questions and discusses why people want to learn Python and how they would use it. It also briefly covers Python's history and development, its use in data science and machine learning today, and different modes like IPython and Python scripts. Finally, it introduces Jupyter notebooks as an interactive coding environment.
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
The document discusses JRuby on Google App Engine, including key features of App Engine, quotas and billing, limitations, the current issues with JRuby on App Engine, App Engine gems, the development environment, deployment process, APIs, and milestones in the development of JRuby on App Engine. It also includes a short biography and discussion of learning experiences from building an iPhone app that uses App Engine and JRuby as a backend.
For several educational institutions, YouTube serves the purpose of an online video-sharing website. As video content grows, new challenges emerge with respect to management and organization. Some of the challenges faced by institutions with large volume of video content include decentralization of video management, pricing, marketing, web metrics, server traffic, and scalability. Migrating to a video platform can alleviate some of these challenges. Deciding on the right platform can be a daunting task. This presentation highlights various decision-making steps in selecting the right platform that meets institutional requirements.
URIplay for Media Futures Conference (2009)Chris Jackson
The document discusses MetaBroadcast's URIplay project, which aims to help users find moving images across different sources and formats. It aggregates metadata to enable discovery and playback of content. URIplay currently supports sources like YouTube, Hulu, BBC and formats like RSS, JSON, and RDF/XML. The document outlines plans to add more sources and data, improve caching and indexing, and enable others to build apps using URIplay's capabilities or contribute additional content sources.
The document summarizes Andreas Jung's presentation on using MongoDB as the database for BRAINREPUBLIC. Some key points include:
- Andreas evaluated different "no-SQL" database options for BRAINREPUBLIC including key-value stores, MongoDB, and CouchDB.
- MongoDB was chosen because it offered the best performance compared to CouchDB, and its rich query API was preferable to map-reduce alone.
- The proposed architecture for BRAINREPUBLIC involved using MongoDB for the database, RabbitMQ for messaging, and SOLR for search, behind a load balancing layer.
The document discusses different tools for deploying Rails applications, including Moonshine, Capistrano, and Git Pusshuten. Moonshine uses Puppet for configuration management and deployment. Capistrano is used for deployments but mixes deployment with server management. Git Pusshuten allows defining environments using modules and provisioning servers for basic deployment needs using Git. It has advantages of separating deployment from code and fast deploys but has fewer modules and less active development compared to other tools.
Mozy is an online backup service that offers single computer licensing. It provides 2GB of free storage, with 50GB for $5.99/month and 125GB for $9.99/month. It has easy to use navigation and registration. Technical requirements include Windows 2000/XP/Vista/7 or Mac OS X 10.4.11+ and 128kbps upload speed.
Dropbox is also a single computer license with 2GB free, 50GB for $9.99/month and 100GB for $19.99/month. It is highly secure and allows access to files without an internet connection. Requirements are Windows 2003/XP/Vista/7 or Mac OS X 10.
The document discusses how to write a scalable Symfony application in the cloud. It covers upgrading points like database connections, file uploads, session storage, local development, and deploying. Database connections should use a master-slave configuration. File uploads can use Amazon S3 for storage. Sessions can be stored in a database. Local development differs from production. Deploying can use SVN update or checkout with symlinking. Automation helps deployment.
Cloudlytics is a Log analysis tool that helps you track all your Amazon S3 and CloudFront logs.
1) Why Log Processing
2) Use Cases
3) Sample Reports
4) What's Next
This document proposes standardizing the use of FTP for data exchange between patent offices. It suggests creating standardized user roles and folder structures on the FTP site. File names and formats would also be standardized for bibliographic and image data deliveries. An automation and monitoring tool is recommended to help ensure timely and consistent data exchange in the future.
The document summarizes Alvaro Videla's presentation on integrating Erlang with PHP. It introduces Erlang as a general purpose, functional programming language invented at Ericsson in 1986. It then discusses some popular products built with Erlang like Amazon SimpleDB and RabbitMQ. The presentation covers the PHP Erlang Bridge extension, which allows PHP to communicate with Erlang nodes. Examples are given of building a RabbitMQ admin console and using Erlang for PHP session storage. The document concludes by discussing how to install the extension and use it to send/receive messages and make RPC calls to Erlang.
The document discusses using JRuby and Duby to run Ruby on Rails applications on Google App Engine. It provides an overview of App Engine's key features and limitations. It then discusses how JRuby allows Ruby code to access Java APIs and libraries on App Engine. The document outlines milestones in developing JRuby for App Engine and current issues. It also introduces the dm-appengine and Duby libraries for modeling data and building applications in Ruby.
Presentation for the Workshop at the TYPO3 Developer Days 2013 (July 4th) in Hamburg:
- What happened since TYPO3 4.5?
- Roadmap for TYPO3 CMS 6.2 LTS
- Current Status of 6.2 Development
Codeworks'12 Rock Solid Deployment of PHP AppsPablo Godel
Web applications are becoming increasingly more complex, so deployment is not just transferring files with FTP anymore. We will go over the different challenges and how to deploy our PHP applications effectively, safely and consistently with the latest tools and techniques.
This document summarizes a presentation given by Tomas Lin on using Grails for Flex and Java developers. The presentation introduces Grails, highlighting four cool things about it including its ready-to-go configuration and use of the Groovy programming language. It demonstrates how to build a basic Grails application and explores integrating Grails with Flex using plugins for scaffolding and BlazeDS. The document concludes by discussing other Grails and Flex integration options and taking questions.
Optimizing Latency-Sensitive Queries for Presto at Facebook: A Collaboration ...Alluxio, Inc.
Alluxio Global Online Meetup
May 7, 2020
For more Alluxio events: https://www.alluxio.io/events/
Speakers:
Rohit Jain, Facebook
Yutian "James" Sun, Facebook
Bin Fan, Alluxio
For many latency-sensitive SQL workloads, Presto is often bound by retrieving distant data. In this talk, Rohit Jain, James Sun from Facebook and Bin Fan from Alluxio will introduce their teams’ collaboration on adding a local on-SSD Alluxio cache inside Presto workers to improve unsatisfied Presto latency.
This talk will focus on:
- Insights of the Presto workloads at Facebook w.r.t. cache effectiveness
- API and internals of the Alluxio local cache, from design trade-offs (e.g. caching granularity, concurrency level and etc) to performance optimizations.
- Initial performance analysis and timeline to deliver this feature for general Presto users.
- Discussion on our future work to optimize cache performance with deeper integration with Presto
This document provides an introduction to Cross-Origin Resource Sharing (CORS), which defines a mechanism that enables client-side cross-origin requests. It discusses alternatives to CORS like JSONP and server-side proxies. It explains the CORS process, including how simple requests work directly and how preflight requests are used for more complex requests involving custom headers. It also provides browser support information and links to specifications and further resources about CORS.
This document provides an overview and introduction to learning Python for data science. It outlines the structure, which includes introductions to NumPy, basic plotting, and pandas. It encourages asking questions and discusses why people want to learn Python and how they would use it. It also briefly covers Python's history and development, its use in data science and machine learning today, and different modes like IPython and Python scripts. Finally, it introduces Jupyter notebooks as an interactive coding environment.
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
Securing your Kubernetes cluster_ a step-by-step guide to success !KatiaHIMEUR1
Today, after several years of existence, an extremely active community and an ultra-dynamic ecosystem, Kubernetes has established itself as the de facto standard in container orchestration. Thanks to a wide range of managed services, it has never been so easy to set up a ready-to-use Kubernetes cluster.
However, this ease of use means that the subject of security in Kubernetes is often left for later, or even neglected. This exposes companies to significant risks.
In this talk, I'll show you step-by-step how to secure your Kubernetes cluster for greater peace of mind and reliability.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
Dr. Sean Tan, Head of Data Science, Changi Airport Group
Discover how Changi Airport Group (CAG) leverages graph technologies and generative AI to revolutionize their search capabilities. This session delves into the unique search needs of CAG’s diverse passengers and customers, showcasing how graph data structures enhance the accuracy and relevance of AI-generated search results, mitigating the risk of “hallucinations” and improving the overall customer journey.
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology
Maruthi Prithivirajan, Head of ASEAN & IN Solution Architecture, Neo4j
Get an inside look at the latest Neo4j innovations that enable relationship-driven intelligence at scale. Learn more about the newest cloud integrations and product enhancements that make Neo4j an essential choice for developers building apps with interconnected data and generative AI.
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionAggregage
Join Maher Hanafi, VP of Engineering at Betterworks, in this new session where he'll share a practical framework to transform Gen AI prototypes into impactful products! He'll delve into the complexities of data collection and management, model selection and optimization, and ensuring security, scalability, and responsible use.
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...SOFTTECHHUB
The choice of an operating system plays a pivotal role in shaping our computing experience. For decades, Microsoft's Windows has dominated the market, offering a familiar and widely adopted platform for personal and professional use. However, as technological advancements continue to push the boundaries of innovation, alternative operating systems have emerged, challenging the status quo and offering users a fresh perspective on computing.
One such alternative that has garnered significant attention and acclaim is Nitrux Linux 3.5.0, a sleek, powerful, and user-friendly Linux distribution that promises to redefine the way we interact with our devices. With its focus on performance, security, and customization, Nitrux Linux presents a compelling case for those seeking to break free from the constraints of proprietary software and embrace the freedom and flexibility of open-source computing.
“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th International Conference on Advanced Information Systems Engineering (CAiSE), 3 June 2024, Limassol, Cyprus.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
A tale of scale & speed: How the US Navy is enabling software delivery from l...sonjaschweigert1
Rapid and secure feature delivery is a goal across every application team and every branch of the DoD. The Navy’s DevSecOps platform, Party Barge, has achieved:
- Reduction in onboarding time from 5 weeks to 1 day
- Improved developer experience and productivity through actionable findings and reduction of false positives
- Maintenance of superior security standards and inherent policy enforcement with Authorization to Operate (ATO)
Development teams can ship efficiently and ensure applications are cyber ready for Navy Authorizing Officials (AOs). In this webinar, Sigma Defense and Anchore will give attendees a look behind the scenes and demo secure pipeline automation and security artifacts that speed up application ATO and time to production.
We will cover:
- How to remove silos in DevSecOps
- How to build efficient development pipeline roles and component templates
- How to deliver security artifacts that matter for ATO’s (SBOMs, vulnerability reports, and policy evidence)
- How to streamline operations with automated policy checks on container images
A tale of scale & speed: How the US Navy is enabling software delivery from l...
Large Files without the Trials
1. Large Files
Without the Trials
Aaron VanDerlip and Sally Kleinfeldt
Plone Symposium East 2010
Thursday, June 3, 2010
2. Acknowledgments
• Bioneers provides environmental education
and social connectivity through
conferences, radio and TV, books, and online
materials
• Engaged Jazkarta to build a file asset server
based on Plone to help them organize,
capture, and store multimedia and textual
content with files as large as 5 GB.
Thursday, June 3, 2010
8. Uploading Big Files
• Browser encodes file in multipart mime
format
• Zope must undo this encoding
• CPU and memory intensive, and SLOW
• Zope thread is blocked during this process
Thursday, June 3, 2010
10. Learning from Rails
• Get file encoding/unencoding and read/
write operations out of Plone
• Web servers are really good at this -
Apache, Nginx, and Lighttpd
• Our implementation uses Apache
• Apache file streaming is fast and threads
are cheap
Thursday, June 3, 2010
11. Learning from Rails
• Uploads: Apache plus mod_porter
http://therailsway.com/tags/porter
• Downloads: Apache plus mod_xsendfile
http://john.guen.in/past/2007/4/17/
send_files_faster_with_xsendfile/
• ...and of course ZODB Blob storage
Thursday, June 3, 2010
12. Mod Porter
• Parses the multipart mime data
• Writes the file to disk
• Changes the Request to contain a pointer
to the temp file on disk
• All done efficiently in C code inside your
Apache process
Thursday, June 3, 2010
14. Apache Config for
Mod Porter
LoadModule apreq_module /usr/lib/Apache2/modules/mod_apreq2.so
LoadModule porter_module /usr/lib/Apache2/modules/mod_porter.so
# Apache has a default read limit of 64MB, set it higher
APREQ2_ReadLimit 2G
...
Porter On
# Files below this size will not be handled by mod-porter
PorterMinSize 14M
# Where the uploaded files are stored
PorterDir /mnt/uploads-Apache
Thursday, June 3, 2010
15. X-Sendfile
• HTTP header
• Set an X-Sendfile header and the path of a
file on your response
• Apache does the rest
Thursday, June 3, 2010
16. Apache Config for
X-Sendfile
LoadModule xsendfile_module /usr/lib/Apache2/modules/mod_xsendfile.so
...
EnableSendfile On
XSendFile on
# Config to send file resources directly from blob storage
XSendFilePath /mnt/bioneers/var/blobstorage
Thursday, June 3, 2010
17. Using X-Sendfile
from Python
def download(self, response, file_path):
response.setHeader("X-Sendfile",
file_path)
Thursday, June 3, 2010
18. Blob Storage
• Uploads
• Blob.consumeFile moves file from
Apache’s temp area to blob storage
(ZODB/blob.py)
• Uses os.rename, file never enters Plone
• Downloads
• Served directly from blob storage
Thursday, June 3, 2010
20. What About Really
Really Big Files?
• Use FTP
• Supports continuation and batching
• Handles files too large for browser limits
• Content editors use FTP to transfer files to
an upload directory
Thursday, June 3, 2010
23. ore.bigfile
• Minimally intrusive, works with the grain of
Plone
• Provides Big File content type
• IFrontendFileServer interface defines two
methods that provide web server support
for upload and download
• Apache and Nginx implementations
provided
Thursday, June 3, 2010
24. ore.bigfile
Limitations
• Upload directory is hardcoded
• Possibility of error on very large images
which Mod Porter intercepts
Thursday, June 3, 2010
26. Solution
• Bypass CMFEditions - no file size limitation
• Create a new version only when file
changes (not metadata)
• Allow old versions to be purged
• Version information stored on Big File
object using annotations
Thursday, June 3, 2010
28. Conclusion
• ore.bigfile solves the Big File problem for a
particular use case, not feature complete
• It does so by taking advantage of mature
web server technology
• The code is minimally intrusive
• It provides a strategy for implementation
we can learn from as we improve Plone’s
Big File story
Thursday, June 3, 2010