Home

Anonymous LongStone

just-core

Just "CORE"

This is a framework "foundation" that designed from hard lessons learned in both high load (100K++ concurrent) and highly volitile distributed environments.

As of June 2012 this project will proceed under the TOGAF ADM* and an Architectural Review Board will be established by Sept. 2012. Artifacts produced from the ADM will be included as part of the documentation of this project.

The primary objective is KISS (Keep It Simple Stupid) for ease of development, change management and "late" optimization.

Very "simple" choices in structure and interface have been made in core because they are more readily understood, reducing "ramp up" time and more importantly easy to modify and extend.

The namespace is BIG_AND_UGLY because it's clear and easy for programers to see where CORE starts and your own code begins (if you've chosen your own name space, you should...)

See: JCORE Stack to get a sense of how the frame work is structured.

Simple:
Development:
- developers can worry about what they need to get done, not basic functionality/basic due dilligence (error checking every query etc.)

    - built in, dirt simple templating system. can output any text based file  
                    -(has been used in production environments for [HTML, CSS, PHP, XML])

    - SOA and "plugin" architecture 
        - separate transport layer can handle JSONRPC (AJAX), HTTP, SOAP, etc...
            - all processing should be separate from the transport layer, reuse the same business logic for different API's
        - plugins are self contained with a boot strap process to load any other plugin dependencies

    - built in logging (for performance, BI and... no one ships errors to production right :-/)
        - if you care enough to build your own app you should know what's going on with it
        - log to multiple facilities: SYSLOG (PHP default), UDP, DB, email (tread carefully)

    - DAO and access to multiple types of DB  by short name "DSN" [Data Source Name]
        - inc. NOSQL like couch/redis [to come]
        - built in master/slave relationship (for RDBMS supporting it) in DSN name space
            - instantiate from the slave (or master)
                - save to the master on decomposition or request (MySQL && Postgres)

    - DB access through DSN and central database interface
        - add as many DB's as you need, connections are instantiated only on request to the DB
        - access your database(s) in POS [Plain Old SQL for MySQL/Postgres]
        - get an array or raw PHP resource back

    - built in cache (multiple API's (APC, xcache, Eaccelerator) , write through, write back, write your own)

Deployment:
    - *.ini based configurations 
        - easy syntax for syadmins to understand, managae and maintain
        - can be changed @ runtime (should be OPCODE cached for high performance)

    - deploy CORE, plugins and API's separately from source control

    - deploy a common code base over multiple applications
        - shorten the learning curve when reassigning your resources
  • see www.opengroup.org/togaf/ for more information on The Open Group Architectural Framework and the TOGAF Architectural Development Model

licensed under: http://www.opensource.org/licenses/osl-3.0
plugins and packages may use what ever license they wish. JCORE [just-core] is designed to separate the foundation layer from the business logic and implementation


Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.