View
796
Download
0
Category
Preview:
Citation preview
What’s new with the Alfresco Platform?
Ole HejlskovDeveloper Evangelist
@OleHejlskov
Welcome!
2
A look at today’s presentation agenda
Alfresco Platform Roadmap
Platform VisionWhat problems does the Alfresco
Platform helps and will help solve and for which personas
Platform projectsOverview of current ongoing platform initiatives
3
Extreme ScalabilityProving Alfresco at Cloud scale and
providing tools & reference point for real life implementations
Upgrade Task ForceSimplification of the customer maintenance lifecycle, in response of overwhelming customer validation
Share separationEffects of the Share separation and Core
platform modularization
Dev Platform & SDK Consolidate & Expand APIs / extension points to ensure high longevity Alfresco application development and greatly simplify SDK based Alfresco development
4
A look at today’s presentation agenda
Alfresco Platform Roadmap
What’s in it & when?When can you expect release of the
ongoing projects, what are backlog and horizon 2 projects
Conclusions and QARecap of the platform lifecycle makeover and open discussion
Vision for the Alfresco PlatformObjectives and guiding forces driving development of the Alfresco Platform
6
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
7
Pillars of the Alfresco Platform vision
Understanding the vision
OpenOpen source, based on Open
Source components and Open Standards, multi-language
ScalableArchitected to perform at cloud scale, along multiple scalability
dimensions & different use cases
DevelopmentA product that Devs love, with
comprehensive, stable & supported APIs and SDKs
RapidOffering a high productivity development environment
and a smooth learning curve
ApplicationsSmart process applications and
any other integrated application
Extended ecosystemPowering both internal and
external (community, partners, customers) development
DeploymentA product that Ops love, with a simple yet scalable cloud ready installation and configuration
HybridThe Platform & solutions built on it must be able to run on
premise or on Cloud (or both)
8
Technology & market innovation driving Alfresco Platform strategy
Driving Forces
Hybrid ECM Innovate at Cloud speed Think Big Customer drivenPlatform 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
9
Key improvement areas in the customer lifecycle
Customer Driven
Backwards CompatibilityJava Modules
IndexExtreme scale
BackwardsCompatibility
Share Extensions
ModulesIsolation
In place upgrade SP & HF
RepositoryExtreme
Scale
BackwardsCompatibility
Remote Applications
Alfresco Platform projectsOngoing developments in the Alfresco Platform
11
Platform InvestmentsAn 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
12
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
13
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
14
What’s in it for me?
Extreme Scalability
1. Alfresco.next 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
15
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)
16
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?
17
Modularizing the platformBreaking the monolith
Alfresco Platform
Core set of functionalities exposing
extension points including Java and
ReST APIs
Transformation servicesCan 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 servicesCan be scaled independently as it relies on
Solr4 standalone (with Replication and
Sharding support)
18
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!
19
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
20
Multiple ways Alfresco helps you achieve your custom solutions
The Alfresco Developer conundrum
Compatibility
Dev EnvSamples & Docs
Standalone AppPlatform Extension
Documentation
SamplesCompatibility
Developer Environment
Share ExtensionAikau basedCompatibility
Dev Env
Samples
Surf based
StrategicTactical
21
Consolidate & ExtendPlatform execution strategy
Consolidate
Alfresco.next
Discover
Go ahead and replace it with
your own text.
Design
Go ahead and replace it with
your own text.
Consolidate
Alfresco.next will deliver on
API fidelity and Dev Experience
Invest in an increasingly
complete and self-servicing
ReST APIs
Extend
Extend
Post Alfresco.next
22
Developer platform consolidation
1. Documentation of Extension (Platform Java & Share) & integration (ReST) pointsMove old ReST API to Limited Support and double down on new Alfresco One APICleary identify and document supported Java and Share
2. API lifecycle, support and Backward compatibility In process - Major version supportReST - Independently versioned and inherently backward compatible
3. Customer success driven tactical investments on the Java platform & modulesJAR 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
23
docs.alfresco.com/5.0/concepts/dev-extensions-share-extension-points-introduction.html
StatusLive on Alfresco Docs
For each extension pointClear documentationSample code (easily forkable)A Support statusMajor version compatibility
A glimpse on the improved Alfresco Dev Experience
Share extension points documentation
How can you help
Send feedback to me, ole.hejlskov@alfresco.com or viaAlfresco DEVPLAT project
24
docs.alfresco.com/5.0/concepts/dev-extensions-share-extension-points-introduction.html
StatusLive on Alfresco Docs
For each extension pointClear documentationSample code (easily forkable)A Support statusMajor version compatibility
A glimpse on the improved Alfresco Dev Experience
Platform extension points documentation
How can you help
Send feedback to me, ole.hejlskov@alfresco.com or viaAlfresco DEVPLAT project
25
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.xShare 5.x will be compatible with 5.1 Alfresco modules can be compatible for a major version
2. ReST API version driven support for integrations (standalone apps)Not bound to the Alfresco versionClear rules for versioning of ReST APIsShould ideally never need to version, requires client side discoverability
For internal and external Alfresco extensions and integrations
26
Alfresco SDK
What’s out alreadyAlfresco SDK 2.1.0 - Compatible with 5.0, with hot reloading (Platform & Share)
What’s on the wayAlfresco SDK 2.1.1 - Multiple bug-fixes, backward compatible
Together with Alfresco nextFully supported, easily forkable and complete set of samples on alfresco-sdk-samples (in Github)Improved hot reloadingCustomer 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
What & when?An outlook to our target Platform release plan
28
Information provided in the following slide is roadmap information and therefore subtle to change in subject, timelines, context.
29
Platform release targets
1. Target: 5.1 —> End of primo 2016Both Platform and Share 5.1 releasesIncludes all major Developer Platform improvementsSolr sharding and TXN MDQ improvements
2. Post 5.1 —> 2016Share can follow a more frequent / independent release scheduleIndependent maintenance schedulesStrategic improvements in the ReST API (vs Java), functionally and non functionallyMore modularization, for agility and scalability purposes
30
Take-aways1. API Lifecycle
Fundamental to avoid dependency hellClear, documented, easy to use and supported extension pointsKey factor to drive seamless upgrades
2. Extreme ScalabilitySolr ShardingMDQ improvementsTools 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
Conclusions and Q/A
32
WHAT WHY WHERE WHEN WHO HOW
Any Question ???Feel free to send your feedback at ole.hejlskov@alfresco.com or on twitter @OleHejlskov
Recommended