TechEd 2008 Developers - Soovitusi SharePoint WCMS saitide ehitamisel

23.11.2008  |  Gunnar

TechEd 2008 Developers TechEd 2008 Developers raames käisin kuulamas Andrew Connell‘i ettekannet SharePoint‘i sisuhalduse kohta. Andrew andis oma ettekandes head nõu ning demos erinevaid nõkse, kuidas SharePoint’i sisuhaldusel baseeruvaid lehekülgi ehitada ja optimeerida. Et minulgi neli taolist WCMS saiti hetkel käsil (küll ainult hoolduse mõttes), siis oli Andrew ettekanne minu jaoks väga huvitav ja õpetlik.


Eestis kasutatakse SharePoint’i sisuhalduse võimalusi avalikel lehekülgedel vähe, sest baaspakett ise maksab peaaegu 600K EEK (SharePoint Price Calculator) ja sellele lisanduksid siis veel lehekülje disainimise ja lehekülje ehitamise kulud. Suuremate lehekülgede kontekstis tasub see investeering ennast ära, kuna SharePoint’i on oluliselt lihtsam siduda teiste Microsoft-i platvormil töötavate toodetega kui valdavat osa vabavaralist softi. Samuti õigustab SharePoint ennast sisuhaldussüsteemina ära kui sisu avaldamisega tegeleb palju inimesi (sisu lisamise õigused, versioonimine, kinnitamine, avaldamise töövood jne).

Toon siinkohal ära Andrew poolt räägitud olulisemad punktid lühikokkuvõtte vormis. Kes teab, äkki ma polegi Eestis ainus, kes WCMS saitidega peab tegelema.

  • name.dll  Korista avalikest saitidest ära kõik viited failile name.dll. (Täpsemat infot pakub Microsoft Knowledge Base artikkel Message in the Information bar in Internet Explorer 7 when you browse to a Windows SharePoint Services 3.0 site or to a SharePoint Server 2007 site: “The Web site wants to run the following add-on: ‘Name ActiveX Control’”)
  • Kasuta CSS  Lehe pay load‘i vähendamiseks kasuta CSS-i. Out-of-box sisupõhjad baseeruvad kõik tabelitel ning seepärast on nad küllaltki mahukad.
  • JavaScript  Vaikimisi laetakse igal pöördumisel selline fail nagu core.js. Tihti pole seda faili avalikes saitides vaja. Üks võimalus on pöördumised selle faili poole blokeerida. Teine võimalus on paigutada pöördumine sellele failile master lehekülje lõppu. Kolmas võimalus on laadida see fail IFrame abil brauseri mällu, kui seda vaja peaks olema. Lehe pay load seisukohast on see fail küllaltki kulukas.

    29%  -  muud skriptid ja CSS
    45%  -  sisu ja branding
    26%  -  core.js

  • CAS poliisid Vaikimisi on turvatasemeks WSS_Minimal, mis on avalike saitide korral kõige turvalisem. Selle asemel, et muuta üldist turvataset, on mõttekas muuta nõudlikema komponentide endi turvataset.
  • Lockdown Feature  See feature ei lase anonüümseid kasutajaid juurde SharePoint loendite ja üksuste vaikevaadetele. Publishing Site loomisel aktiveeritakse see feature automaatselt. Mõningate muudatuste korral võidakse Lockdown Feature kinni keerata ning see tuleb uuesti ise aktiveerida.
  • Page output cache  Lehekülgede väljundi puhver on kiireim puhver, mida SharePoint pakub. Lehekülgede väljundit hoitakse mälus. Kasutatakse ASP.NET 2.0 puhverdamise süsteemi. Publishing Site korral saab luua erinevaid puhverdamise profiile. Vaikimisi pole lehekülje väljundi puhverdamine sisse keeratud.
  • Object cache  Objektide puhver kasutab samuti ASP.NET 2.0 infrastruktuuri. Mitut saiti hõlmavate päringute tulemused saab salvestada objektide puhvrisse ning seega pole igal pöördumisel vaja objekte uuesti konstrueerida. Vaikimisi puhverdamine sisse lülitatud pole. Et selle puhvri efektiivsust mõõta, on soovitatav kasutada performance counter‘it Cache Hit Ratio. Üldiselt võib puhvri suurust (vaikimisi 100MB) tõsta seni kuni see ei ületa 90% serveri mälust.
  • Disc-based cache  Diskil põhineva puhvri idee on lihtne. SharePoint’i sisuhoidlas asuvad staatilised failid kopeeritakse serveri kõvakettale, et vältida asjatuid pöördumisi sisuhoidlasse.
  • Staatiline ja dünaamiline pakkimine  Väljundi pakkimisel kasutatakse IIS’i võimalusi. Pakkimine võib oluliselt vähendada lehe pay load‘i. IIS7 pakub välja sellise suurepärase võimaluse nagu pakitud lehekülgede puhverdamine. See tähendab seda, et enne puhverdamist pakitakse lehekülje väljund kokku. See funktsionaalsus tuleb IIS’i konfiguratsioonis ise sisse lülitada. Siinkohal tasub meeles pidada, et mida tihedam on pakkimise tase, seda enam kulub protsessorit ja mälu pakkimise operatsioonidele ja vastupidi. Pakkimise taset võib suurendada kuniks CPU seda välja kannatab.
  • Veebirakenduse konfiguratsioon  Veebirakenduse konfiguratsioonis on soovitatav kinni keerata järgmised võimalused: user presence information, Blog API, Incoming e-mail.

Lisan omalt poolt mõned selgitused ka siia.

Puhvrid on vaikimisi selleks maha keeratud, et peale Publishing Site loomist hakatakse sinna enamasti uut disaini peale paigutama ja sel hetkel oleksid igasugused puhvrid nagu karuteene. Alles siis kui leht on püsti ja töötab ning mingeid suuremaid muudatusi pole oodata, tuleb lehte optimeerima hakata.

Avalikud saidid, mis ei kasuta SharePoint poolt pakutavat JavaScript’il põhinevaid dünaamilisi navigatsioonielemente, ei vaja core.-js faili laadimist. Sellisel juhul on targem core.js faili laadimine üldse välja lülitada.

4 kommentaari sissekandele “TechEd 2008 Developers - Soovitusi SharePoint WCMS saitide ehitamisel”

  1. Gunnar

    Lockdown feature aktiveerimiseks kasuta järgmist käsku:

    stsadm -o activatefeature -url [site collection url] -filename ViewFormPagesLockDown\feature.xml

    Täpsemat lugemist pakub TechNeti artikkel Plan security for an external anonymous access environment (Office SharePoint Server).

  2. martin

    Kuidas kommenteeriksid avaliku veebisaidi loomist wss 3 baasil? kuna wss tuttav ja vaja veebisait teha, siis kasutaks hea meelga just seda. Kulude poole pealt, saan aru tuleks siin üks win serveri litsentsi kulu+töö ja tegemine ja sisuliselt kõik vist?

  3. Gunnar

    WSS 3.0 peale saab avalikku lehte luua küll. Ma olen kuskil näinud ka täiesti tasuta jubinaid, mis WSS peal veebi sisuhalduse peaks oluliselt mugavamaks muutma. Asi, mis on natukese keerukam, on kujunduse külge ajamine, kuid kui see on korra üle elatud, siis läheb edaspidi lihtsamini.

    Mingeid täiendavaid litsentse ma ei tea, et vaja oleks WSS korral. Windowsi oma peab olema ja SQL Server olenevalt sellest kas kasutad tasulist versiooni või mitte.

  4. martin

    Selge. Tänud!

Kommenteeri

sulge
Saada link e-postiga

© DT 2012 | Creative Commons Attribution-Noncommercial 3.0 License | WordPress