Ir para conteúdo


Foto

Fazer deploy de app sem utilizar sencha app build

CMD deploy

Melhor Resposta Wemerson Januario , 23 January 2016 - 15:35

Como vc não quer fazer build, logo sua app irá para produção com o loader habilitado e tornará lento, se você remover alguns diretórios pode ser que fazerá falta ao fazer load,

 

Outra coisa remover arquivos, diretórios não mudará nada, pois o Ext JS só carrega o que ele precisa ou o que vc coloca nos requires. Sugiro usar o sencha cmd sempre e fazer build, para produção pois irá criar um só arquivo com tudo que precisa e nada mais.

 

Agora se quiser subir para um server sem fazer build, você terá que enviar tudo que ta no seu projeto.

Visualizar todo o conteúdo do post


  • Por favor, faça o login para responder
8 respostas neste tópico

#1 iso48

iso48

    Member Avançado

  • Membros
  • PipPipPip
  • 71 posts

Postado 22 January 2016 - 09:55

Criei uma aplicação com ExtJS 5.1.1 e Sencha CMD, com cerca de 6MB.

Queria fazer o deploy da aplicação, mas sem utilizar o sencha app build.

Qual a melhor forma de fazer isso?

Obrigado.

 

NOTA:

Mesmo localmente, no meu PC, a aplicação demora cerca de 5.6 seg. a carregar.

Eliminando diversos ficheiros em ext/packages, deixando apenas os ficheiros:

  • ext-locale
  • ext-theme-classic
  • sencha-core
  • sencha-charts (a app não tem charts mas a consola pede alguns ficheiros chart)

o carregamento (local) da app reduz para 3.4 seg, mas após o deploy demora muito mais.



#2 Wemerson Januario

Wemerson Januario

    Administrador Ext JS Brasil

  • Administrators
  • 857 posts
  • LocationGoiânia - GO

Postado 22 January 2016 - 10:09

Vc deve não estar guardando cache do app.js. dá uma tunada seu app.json. 


Wemerson Januario
http://wemersonjanuario.com.br
Twitter: @januariocoder

 

Treinamento e Consultoria Ext JS. Qualifique-se já!


#3 iso48

iso48

    Member Avançado

  • Membros
  • PipPipPip
  • 71 posts

Postado 22 January 2016 - 10:20

Obrigado pela ajuda Wemerson

 

No app.json tenho:

    "theme": "ext-theme-classic", ]
    
    "requires": [
        "ext-locale",
      //  "sencha-charts"
    ],
     "locale": "pt",

Se remover a pasta sencha-charts a console dá a seguinte informação:

GET http://localhost/intranet/Ciber_Crime_X/ext/packages/sencha-charts/overrides-ext/overrides/AbstractChart.js?_dc=1453468438005 Ext.Boot.Ext.Boot.Entry.evaluateLoadElement @ bootstrap.js:1299Ext.Boot.Ext.Boot.Entry.loadElement @ bootstrap.js:1217Ext.Boot.Ext.Boot.Entry.load @ bootstrap.js:1267Ext.Boot.Ext.Boot.Request.loadEntries @ bootstrap.js:864Ext.Boot.Ext.Boot.Boot.processRequest @ bootstrap.js:456Ext.Boot.Ext.Boot.Boot.load @ bootstrap.js:478loadResources @ bootstrap.js:1555Ext.Microloader.Ext.Microloader.Microloader.load @ bootstrap.js:1570(anonymous function) @ bootstrap.js:1514readyStateChange @ bootstrap.js:572

bootstrap.js:1299 GET http://localhost/intranet/Ciber_Crime_X/ext/packages/sencha-charts/overrides-ext/overrides/AbstractChart.min.js?_dc=1453468438005 

Tenho que declarar no index.html alguns path como se fazia sem Sencha CMD ou isso é feito no app.json (no caso de não fazer o sencha app build)?



#4 Wemerson Januario

Wemerson Januario

    Administrador Ext JS Brasil

  • Administrators
  • 857 posts
  • LocationGoiânia - GO

Postado 22 January 2016 - 12:29

em algum lugar vc deve está usando alguma classe  do pacote de gráficos. dá um sencha app refresh pra ver se resolve ou facilita o debuga pra saber onde está essa ultilização.


Wemerson Januario
http://wemersonjanuario.com.br
Twitter: @januariocoder

 

Treinamento e Consultoria Ext JS. Qualifique-se já!


#5 Wemerson Januario

Wemerson Januario

    Administrador Ext JS Brasil

  • Administrators
  • 857 posts
  • LocationGoiânia - GO

Postado 22 January 2016 - 12:31

coloca isso no seu app.json pra resolver o problema  do cache nas builds de production. vai melhorar muito

 /**
     * Settings specific to production builds.
     */
    "production": {
        "output": {
            "appCache": {
                "enable": true,
                "path": "../cache.appcache"
            }
        },
        "loader": {
            "cache": "${build.timestamp}"
        },
        "cache": {
            "enable": true
        }
    },
    /**
     * Settings specific to testing builds.
     */
    "testing": {
        "output": {
            "appCache": {
                "enable": false
            }
        },
        "cache": {
            "enable": false
        }
    },
    /**
     * Settings specific to development builds.
     */
    "development": {
        "loader": {
            "cache": false
        },
        "cache": {
            "enable": true
        },
        "tags": [
            // You can add this tag to enable Fashion when using app watch or
            // you can add "?platformTags=fashion:1" to the URL to enable Fashion
            // without changing this file.
            //
            // "fashion"
        ]
    },

sendo assim na build de produção o _dc? sempre será fixo(hora/versão da build) só carregará novamente apenas quando vc liberar outra build


  • Legolas curtiu isso

Wemerson Januario
http://wemersonjanuario.com.br
Twitter: @januariocoder

 

Treinamento e Consultoria Ext JS. Qualifique-se já!


#6 iso48

iso48

    Member Avançado

  • Membros
  • PipPipPip
  • 71 posts

Postado 22 January 2016 - 13:03

Obrigado Wemerson.

Alterei o app.json com o código sugerido no seu post.

Li o máximo possível sobre o deploy das app's ExtJS (incluindo os livros da Loiane Groner). Tudo que encontro refere-se (quando se constroi a app com sencha CMD) ao deploy de app resultante de um build.

No entanto, pretendia fazer um deploy sem fazer o build.

Neste caso, devo fazer o deploy no servidor de todo o workspace? 

Posso excluir parte dos ficheiros para melhorar o tempo do carregamento? Quais?

 

Mantenho o path do js no app.json igual?

    "js": [
        {
            "path": "${framework.dir}/build/ext-all-rtl-debug.js"
        },
        {
            "path": "app.js",
            "bundle": true
        }
    ],

Ou devo declarar no index.html o path da framework como se fazia no ExtJS 4 quando não se utilizava o CMD?

Mais uma vez obrigado pela sua ajuda e disponibilidade.



#7 iso48

iso48

    Member Avançado

  • Membros
  • PipPipPip
  • 71 posts

Postado 22 January 2016 - 14:45

Fiz alguns teste e, aparentemente, é indiferente que a app seja desenvolvida com ou sem workspace.

Leva sensivelmente o mesmo tempo a carregar.



#8 Wemerson Januario

Wemerson Januario

    Administrador Ext JS Brasil

  • Administrators
  • 857 posts
  • LocationGoiânia - GO

Postado 23 January 2016 - 15:35   Melhor Resposta

Como vc não quer fazer build, logo sua app irá para produção com o loader habilitado e tornará lento, se você remover alguns diretórios pode ser que fazerá falta ao fazer load,

 

Outra coisa remover arquivos, diretórios não mudará nada, pois o Ext JS só carrega o que ele precisa ou o que vc coloca nos requires. Sugiro usar o sencha cmd sempre e fazer build, para produção pois irá criar um só arquivo com tudo que precisa e nada mais.

 

Agora se quiser subir para um server sem fazer build, você terá que enviar tudo que ta no seu projeto.


Wemerson Januario
http://wemersonjanuario.com.br
Twitter: @januariocoder

 

Treinamento e Consultoria Ext JS. Qualifique-se já!


#9 iso48

iso48

    Member Avançado

  • Membros
  • PipPipPip
  • 71 posts

Postado 24 January 2016 - 16:25

Obrigado Wemerson pela ajuda.







Tópicos que também usam as tags CMD, deploy:

0 usuário(s) está(ão) lendo este tópico

0 membros, 0 visitantes, 0 membros anônimos