The document discusses recent developments and future plans for the Alfresco platform. Key points include:
1. The platform vision is to build an open, scalable platform for developing and deploying hybrid content applications.
2. Recent improvements include extreme scalability testing up to 1 billion documents, improved search queries, and plans for independent Share and platform releases.
3. Future work includes continued modularization, a consolidated developer platform with clear extension points and API lifecycles, and independent maintenance of Share and the platform.
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Alfresco Platform Updates for Developers
1. What’s new with the Alfresco Platform?
Ole Hejlskov
Developer Evangelist
@OleHejlskov
Welcome!
2. Vision for the Alfresco Platform
Objectives and guiding forces driving development of the Alfresco Platform
3. 3
Build an open and scalable platform to power the rapid development
and deployment of hybrid content centric applications in the Alfresco
extended ecosystem
Platform Vision
4. 4
Pillars of the Alfresco Platform vision
Understanding the vision
Open
Open source, based on Open
Source components and Open
Standards, multi-language
Scalable
Architected to perform at cloud
scale, along multiple scalability
dimensions & different use cases
Development
A product that Devs love, with
comprehensive, stable &
supported APIs and SDKs
Rapid
Offering a high productivity
development environment
and a smooth learning curve
Applications
Smart process applications and
any other integrated
application
Extended ecosystem
Powering both internal and
external (community, partners,
customers) development
Deployment
A product that Ops love, with a
simple yet scalable cloud ready
installation and configuration
Hybrid
The Platform & solutions built
on it must be able to run on
premise or on Cloud (or both)
5. 5
Technology & market innovation driving Alfresco Platform strategy
Driving Forces
Hybrid ECM Innovate at Cloud speed Think Big Customer driven
Platform and solutions should be
able to run on premise, on cloud
or both
Deliver innovation to the on
premise and cloud products with
agility typical of pure SaaS players
Enable the scaling of people,
processes and products
Customer feedback, research,
validation, pretotyping at the core of
ideation and decision making process
6. 6
Key improvement areas in the customer lifecycle
Customer Driven
Backwards
Compatibility
Java Modules
Index
Extreme scale
Backwards
Compatibility
Share Extensions
Modules
Isolation
In place
upgrade
SP & HF
Repository
Extreme
Scale
Backwards
Compatibility
Remote Applications
8. 8
Platform Investments
An end to end Platform lifecycle makeover
DeploymentTesting Release Integration Maintenance
Standard Dev Env
Share Separation
API BCKs
Xtreme scalability
Share separation API compatibility
JAR modules
Modules isolation
Dev Docs / Samples
Solr Sharding
Suite installers
In-place SP & HF
API Compatibility
Share separation
Development
9. 9
Testing real life cloud-scale use cases
Extreme Scalability
1. Loading Alfresco on AWS + Aurora up to 1B documents
2. Indexing 1B documents with a sharded Solr configuration (20 shards, with 50M docs)
3. Improve MDQ to support transactional use cases (OR and boolean support)
4. Test real life use cases, starting with Share collaboration and Headless Content
Platform
5. Producing sizing and scalability blueprints based on real data collected at different
data points
10. 10
Some numbers
Extreme Scalability
1. The best document load rate for the number of Alfresco servers, latency and load
balancer thresholds was 1000 documents per second (with 10 nodes); the load rate
was consistent even passing the 1B document
2. A 3.2 TB Aurora database did not show any degradation
3. On 1B docs:
Query: select * from cmis:document where IN_FOLDER('0d10d28f-4671-4077-b888-b7f4eaf1b450') order by cmis:name asc
Paging: Limit 100 and various skips applied to the known 1000 results
Time: 150ms
11. 11
What’s in it for me?
Extreme Scalability
1. Alfresco 5.1 supporting Solr Sharding!
2. Improved Metadata queries (OR and Boolean Support)
3. Updated scalability blueprint for 5.x
4. Updated AWS reference architecture for 5.x
12. 12
Enabling a seamless maintenance for Alfresco
Upgrade Task Force
1. In place application of SP & HF (not major and minor upgrades, for now)
2. Separation of Share and Platform releases for independent consumption (and definition
of a clear compatibility matrix)
3. Consolidation of Public API Lifecycle to ensure high longevity customizations (no need for
re-test)
13. 13
Effects to the product lifecycle
Share / Platform separation
Platform and Share
can be built
and developed
independently
Dev Release Install
Platform and Share
can be released
independently (or
together)
Maintain
Suite and
independent
installers for
Alfresco and Share
Consume new
version of Platform
& Share
independently
And what about compatibility?
14. 14
Modularizing the platform
Breaking the monolith
Alfresco Platform
Core set of functionalities exposing
extension points including Java and
ReST APIs
Transformation services
Can be scaled independently using the
transformation server or in MM for
video transformations
Share services
(New!)Subset of platform functionalities now
extracted in a separate module (AMP)
following the Share release lifecycle
Search services
Can be scaled independently as it relies on
Solr4 standalone (with Replication and
Sharding support)
15. 15
Share separation takeaways
1. Share (only) releases will now contain a share-services.amp which contains Share
specific backing APIs
2. Platform (only) released will no longer contain Share specific Java services
3. Compatibility between Share & Alfresco is driven by the Java (not ReST) APIs
compatibility policy (wait for it…in the next slides!)
4. Expect more frequent Share releases on prem (quarterly) and on cloud
What you need to know!
16. 16
Alfresco for the Developers
1. Comprehensive set of content management & workflow Java and ReST API
2. Modular UI framework to custom business solutions
3. De facto standard based and enterprise ready SDKs for web and mobile development
4. Compatibility between Share & Alfresco is driven by the Java (not ReST) APIs
compatibility policy (wait for it…in the next slides!)
What’s great about Alfresco Dev Platform
17. 17
Multiple ways Alfresco helps you achieve your custom solutions
The Alfresco Developer conundrum
Compatibility
Dev Env
Compatibility
Aikau based
Dev Env
StrategicTactical
19. 19
Developer platform consolidation
1. Documentation of Extension (Platform Java & Share) & integration (ReST) points
Move old ReST API to Limited Support and double down on new Alfresco One API
Cleary identify and document supported Java and Share
2. API lifecycle, support and Backward compatibility
In process - Major version support
ReST - Independently versioned and inherently backward compatible
3. Customer success driven tactical investments on the Java platform & modules
JAR simple module support (for Alfresco and Share)
Physical isolation of modules without need to modify Alfresco (immutable)
Share modules support and reporting
Ongoing activities targeting Alfresco.next
22. 22
So what about compatibility?
1. Major version for Platform and Share extensions (modules)
Your custom module built on 5.1 Public API will work throughout the whole 5.x
Alfresco modules can be compatible for a major version
2. ReST API version driven support for integrations (standalone apps)
Not bound to the Alfresco version
Clear rules for versioning of ReST APIs
Should ideally never need to version, requires client side discoverability
For internal and external Alfresco extensions and integrations
23. 23
Alfresco SDK
What’s out already
Alfresco SDK 2.1.0 - Compatible with 5.0, with hot reloading (Platform & Share)
What’s on the way
Alfresco SDK 2.1.1 - Multiple bug-fixes, backward compatible
Together with Alfresco next
Fully supported, easily forkable and complete set of samples on alfresco-sdk-
samples (in Github)
Improved hot reloading
Customer value driven prioritization of Public Github issues. Request
enhancements at https://github.com/Alfresco/alfresco-sdk/issues
Making Alfresco development even more productive, safe and fun
25. 25
n provided in the following slide is roadmap information and therefore subtle to change in subject, timeline
26. 26
Platform release targets
1. Target: 5.1 —> End of primo 2016
Both Platform and Share 5.1 releases
Includes all major Developer Platform improvements
Solr sharding and TXN MDQ improvements
2. Post 5.1 —> 2016
Share can follow a more frequent / independent release schedule
Independent maintenance schedules
Strategic improvements in the ReST API (vs Java), functionally and non functionally
More modularization, for agility and scalability purposes
27. 27
Take-aways
1. API Lifecycle
Fundamental to avoid dependency hell
Clear, documented, easy to use and supported extension points
Key factor to drive seamless upgrades
2. Extreme Scalability
Solr Sharding
MDQ improvements
Tools and collaterals for sizing, scalability and reference architectures
3. Share separation
4. Upgrade task force
What you really need to remember about today’s session